Changed some method names and added documentation.
Warnings Be Gone
Moved exception code to the main method. Makes things look nicer.