Fixed some spacing weirdness
Re-structured app and added test framework.