Fix compiler warning (git_off_t cast to size_t).

Use size_t for page size, instead of long. Check result of sysconf.
Use size_t for page offset so no cast to size_t (second arg to p_mmap).
Use mod instead div/mult pair, so no cast to size_t is necessary.
Fix grammar of licensing sentence, add IRC links

Also various formatting, wrapping and capitalization tweaks.
Add instructions on running the tests
Fix missing object in tests/resources/crlf by changing the tail commit
Fix test repo dir not deleted after running
tests: fix leak
Merge from 2660
Clean up various compiler warnings
Clean up some memory leaks
Cleanup memory leak in ssh transport
config test: clean up memory leak
clone::local test: isalpha -> git__isalpha
global: clean up openssl_locks on shutdown
submodule test: free submodule
mwindow: clean up pack map at shutdown
revwalk::mergebase test: free memory
iterator: free paths when skipping them
Remove unused warning on non-win32
Merge pull request #2612 from ethomson/warnings

Clean up some warnings
Introduce git_rebase to set up a rebase session

Introduce `git_rebase` to set up a rebase session that can
then be continued.  Immediately, only merge-type rebase is
supported.