Refactoring and README updates + jar commit.