Initial working commit

First working version.