Refectoring to allow for unit test project
Added initial test project.

I'm not to be trusted with this. Also, you eclipse fellas might have some
challenges with merging this in.
Merge remote-tracking branch 'source/master' into Refactor
Fixed an issue with the merge
Removed for consistency
Merge remote-tracking branch 'source/pr/24' into HEAD
Updated .gitignore