Still thinking, deleting and renaming
Merge branch 'temp' into new-io
* Changed some of Refresh.io's inner workings and handed its event handling to a subtype of Refresh.Socket.
* Added a few methods to the Refresh.utils module(log, _switch).
* Added a new library extension in the form of a test-suite called 'test'.
* Added Refresh.support for indicating support for APIs used by Refresh
* Normalized XMLHttpRequest and Array.indexOf
* Now adding method to core functions rather than writing external functions
Doing some wrong stuff with git
* Finally changed to monkey patching, feels much sweeter. Though I'm being careful with the use
* Updated all extensions to reflect the change in API.
* Changed io(that's the use of this branch anyways). We now return a request object on which events
  can be registered and access to the xhr is through this object.
* Edited template and view to use Refresh.make rather than add themselves directly to Refresh
* Corrected some typos(Quite a lot though)
* Made Object.each iterate over ownProperties only.
* changed a condition in the test extension to let elements be created even though assertion is not in a test.
* Objects use forEach instead of each
* Objects are no longer patched with 'map', 'filter', 'initialize'
* 'initialize' is now part of utils module
* 'merge' in Array.prototype returns the normal array
* Corrected some lines
* Added error method to utils module and to replace exception
* Replaced all "throw"  statements with  utils.error()
Added List ADT to collections