move compatibility definitions back into magit.el

Move the remaining compatibility definitions back into `magit.el' and
remove `magit-compat.el' which we have created a while back to hold such
definitions.

Having such a separate file made sense while we had many and lenghy
definitions as well as compatibility checks for older versions of Git.
Now that we have only very simple backward definitions and all checks
for older versions of Git have been removed this is no longer necessary.

Also in the future we should avoid backporting definitions from newer
Emacsen and more aggressively require recent Git versions.  But if
we *have to* backport some huge functions then we might have to recreate
`magit-compat.el'.  Don't worry, I will do it.  And writing this message
was likely more work than doing that anyway.
make magit-mode-hook customizable
magit-svn-get-ref-info: insert complete commit information

Insert the complete log output about the found commit into the
buffer.  Previously only the first line was inserted but the
line we later search for is actually the last line in of the
commit message.

The way this information is retrieved could be improved but I
have never used svn so this will have to do.  I also could not
test this, but it should work.

Close #884.

Reported-by: Yasushi Abe <yasushi.abe@gmail.com>
magit-rewrite-set-{,un}used: call magit-refresh

Close #911.
Merge branch 'various'