Refactor PackObject, LooseObject into GitObject.

Combine different objectTypes into GitObject.
Rename PackObject => PackedObject

Fix nits and indents.
nits.
fixed nit.
Merge pull request #888 from dart-lang/fix_push

Refactor PackObject, LooseObject