Added sparse checkout support

Removed method for retrieving sparse checkout paths

Moved sparse checkout method inside Checkout Command
Add test of null value to sparseCheckoutPaths

Increase test coverage, better describe expectations of the called
method from within the test.
Remove unread field noCheckout in CliGitAPIImpl

The field is unread because noCheckout does not have any impact on the
current implementation of CliGitAPIImpl.

Shouldn't it be possible to pass a noCheckout option even to
CliGitAPIImpl and have a job that starts with an empty working
directory, ready for a job step which performs the checkout?