Added a LICENSE
Imported some base types from the durandal project
Rearranged the source code in the project to be easier to maintain

I did things similar to how things are done in the durandal project