Merge pull request #2 from nickebbutt/master

take latest with upgrade to chorus 1.6.4
Created a new chorus web application using java 8, spring mvc 4 and angular js which provides web based capability to read and edit feature files. This is a very rough initial proof of concept.
fixed validation to allow null blank package id and human names as in the case of root the root package
replaced supplier methods with lambda's
cosmetic
Added utility to convert iterable to stream
Split controllers, added spring wiring and pretty json formatting
Reduced scope of factory managed classes
Corrected HTTP methods, removed unused imports
Added basic git integration
Added more functionality to the git integration
Created DAO's for access to the filesystem;  Added webservice to view a revisions changeset as id's;
Fixed wiring for changes
added retrieve feature at revision functionality
Fixed bug in id to path translation
Fixed incorrect id to path conversion
Changed behaviour to -> providing an md5 optimistic lock when the underlying feature does not exist will result in an optimistic lock exception. This ensure's users will be notified if a file was deleted while they were editing.
Allow blank package id - the root package id will be empty
new feature - Git log will follow a file when absolute path provided
cosmetic - organized imports