Changes for #1

As promised, here are the changes. Because they were all some what related, I couldn't do separate pull requests. Please let me know if there is anything that should be changed to your liking.

Cheers!