Add util function to get sha for a fileEntry.
Add file status types.
Add implmentation of git index.

It maintains the index of file status in the git repo.
Add git status.
Don't write unchanged files on commit.
nits.
Add write index support.
Addressed comments.
nit.
Remove serialization.

Manually serialize the object instead of using serialization library.
Refactor StatusEntry => FileStatus.
Remove serialization package as dependency.
revert accidential changes to pubspec file.
Merge pull request #783 from dart-lang/status

Status