Add Rugged::Repository#checkout_tree.
Add Rugged::Repository#checkout.
Allow passing a revspec string to Repository#checkout_tree.
Align test names.
Repository#checkout does not support the :paths option.
Add some missing options.
Add missing documentation.
Small documentation tweaks.
Add tests for checkout in a bare repo.
Fix some memory handling issues that I introduced.

The rugged_cb_payload struct that for the progress and notify callbacks
have to be allocated on the heap, not on the stack.
Use the 1.9.3+ rb_scan_args flag for options.
Some more words.
Add Repository#checkout_head.
Remove one level of indentation.
Support remote branches and allow passing in a Rugged::Branch.
Merge pull request #240 from arthurschreiber/checkout

Checkout