added unit tests, maven now builds JAR containing dependencies, minor improvements