Minor changes
Updated project title in pom.xml
Added custom exceptions in place of generic RuntimeException
Added some javadocs