Moved to spring jpa, updated dependencies, refactored original api