Add some JavaDoc and enhance README