Still in development
function load(src, callbackSuccess, callbackError) {
var head = (document.getElementsByTagName('head') || [])[0] || null;
if(head) {
var script = document.createElement('script');
script.type = 'application/javascript';
script.src = src;
script.async = true;
script.onload = callbackSuccess;
script.onerror = callbackError;
script.onreadystatechange = function() {
if(script.readyState === 'loaded' || script.readyState === 'complete') {
script.onreadystatechange = null;
callbackSuccess();
}
}
head.appendChild(script);
}
}