This is all the rage now. After many attempts to see pure source I resigned myself to an existing package. In this case prototype.
It has a nice enough lib and is used by MVCs such as PHPs Symfony framework.
In addition to my search I found the following cross browser script which is some additional code for prototype to aid the ease of cross browser scripting!