You will be glad to know I figured this out (really impressed with myself even if it did take about 6 hours), I found some code that ran a php command to unset mootools in the YT Framework and I commented it out, I am a bit worried if it might have a knock on effect somewhere else so tomorrow I have to give the site a full test.
// Frontend
// if($app->isSite()){
// // Remove default mootools
// unset($doc->_scripts[JURI::root(true) . '/media/system/js/core.js']);
// unset($doc->_scripts[JURI::root(true) . '/media/system/js/modal.js']);
// unset($doc->_scripts[JURI::root(true).'/media/system/js/caption.js']);
// unset($doc->_scripts[JURI::root(true) . '/media/system/js/mootools.js']);
// unset($doc->_scripts[JURI::root(true).'/media/system/js/mootools-core.js']);
// unset($doc->_scripts[JURI::root(true).'/media/system/js/mootools-more.js']);
//
// unset($doc->_styleSheets[JUri::root(true) . '/media/system/css/modal.css']);
//
// if (isset($doc->_script) && isset($doc->_script['text/javascript']))
// {
// $doc->_script['text/javascript'] = preg_replace('%window\.addEvent\(\'load\',\s*function\(\)\s*{\s*new\s*JCaption\(\'img.caption\'\);\s*}\);\s*%', '', $doc->_script['text/javascript']);
// $doc->_script['text/javascript'] = preg_replace('%jQuery\(window\)\.on\(\'load\'\,\s*function\(\)\s*\{\s*new\s*JCaption\(\'img\.caption\'\);\s*\}\);%', '', $doc->_script['text/javascript']);
// $doc->_script['text/javascript'] = preg_replace('%window\.addEvent\(\'load\',function\(\)\{\s*\}\);%', '', $doc->_script['text/javascript']);
//
// //remove SqueezeBox.initialize in behavior.php
// $doc->_script['text/javascript'] = preg_replace('%SqueezeBox\.initialize\(\{\}\);\s*SqueezeBox\.assign\(\$\(\'a.modal\'\)\.get\(\)\, {\s*parse\:\s\'rel\'\s*\}\);%', '', $doc->_script['text/javascript']);
//
// // Remove call to JTooltips
// $doc->_script['text/javascript'] = preg_replace('window\.addEvent\(\'domready\',\s*function\(\)\s*{\s*\$\$\(\'.hasTip\'\).each\(function\(el\)\s*{\s*var\s*title\s*=\s*el.get\(\'title\'\);\s*if\s*\(title\)\s*{\s*var\s*parts\s*=\s*title.split\(\'::\',\s*2\);\s*el.store\(\'tip:title\',\s*parts\[0\]\);\s*el.store\(\'tip:text\',\s*parts\[1\]\);\s*}\s*}\);\s*var\s*JTooltips\s*=\s*new\s*Tips\(\$\$\(\'.hasTip\'\),\s*{\s*maxTitleChars:\s*50,\s*fixed:\s*false}\);\s*}\);', '', $doc->_script);
// if (empty($doc->_script['text/javascript']))
// unset($doc->_script['text/javascript']);
// }
// }