More documentation in Utility.java

Also added comments to some private methods in there as well.

Changed some try-catch blocks to catch the specific exceptions they are capable of throwing. (Using Exception is bad because its too general).