Added squash command
Fixed an incorrect check in UpdateRefWeb.
Removed the Pair class from the GeoGit API.

Fixes #259
Made it so InitOp will initialize WORK_HEAD and STAGE_HEAD.

Fixes #88
Fixed incorrect results for partial objectIds with an odd number of characters.

Fixes #284
Corrected filtering logic.
Fixed a bug with ReportMergeScenarioOp and RevTreeImpl.

Fixed a bug in ReportMergeScenarioOp where removed features weren't being added to the unconflicted list.
The previously stated bug fix caused a test to fail which revealed a problem with the RevTreeImpl class where if the tree was empty when it was read in it would be created with an empty bucket list instead of Optional.absent() which was causing it to list a feature as removed twice when DiffTree was called.
Generate less garbage during graph walks
Merge pull request #287 from kelseyishmael/RevTreeImplFix

Fixed a bug with ReportMergeScenarioOp and RevTreeImpl.
Merge pull request #285 from jdgarrett/initop-fix

Made it so InitOp will initialize WORK_HEAD and STAGE_HEAD.
Merge pull request #283 from jdgarrett/remove-pair

Removed the Pair class from the GeoGit API.
Merge pull request #280 from jdgarrett/updaterefwebfix

Fixed an incorrect check in UpdateRefWeb.
Added aliases and spell check in CLI
Merge pull request #278 from volaya/alias_spellcheck

Added aliases and spell check in CLI
Added fix for cases when squashing is done on a secondary branch, and when added commits after 'until' contain merge commits
Merge branch 'volaya/squash'