Modernize

Use read-only-mode instead of buffer-read-only
sgit diff and log work asynchronously now
Fix byte-compile warnings