Editor: Undo/Redo Core Functionality

Hello everyone!

It took me a while to get into the editor's architecture, but here it is: the pull request for the undo/redo core functionality.

In order to implement a transaction based undo/redo, I had to reorganised the editors "data-model" a bit. In fact I would appreciate and like to extend the editor towards using an encapuslated "scene data model" during my upcoming contributions. I would like to do so, also in order to have an better possibility to pass around the editor's data to exporters or local storage.

The local storage feature is currently yet broken. The same with the object movement controls. Either we fix it right away or just after the merge.

In file this pull request already now, even when it is a bit incomplete, because I did some mayor changes, who need to be supervised as early as possible, in case to avoid mrdoob:dev and send:dev becoming to distant to each other.

Please let me know what you think. 

Thanks a lot,
Dennis