Improved buildfile
Fixed return type issues and improved documentation
Added serialVersionUID and improved documentation
Improved documentation and removed unuseful chunks of throws declarations