Renamed exception, added serialVersionUIDs, renamed some methods and variables
Clean up some of the exception handling and reduce the number of nulls being returned