Set the stage for some awesome development.

* Added some dependencies
* Added some initial interfaces
* Added a build file to check standards and run tests
* Added files & folders to the gitignore
* Added a decent folder structure