Fixes #3 - Oh Snap! Also clears up some bugs that I found along the way