added some initial tests, and added a build process