Autoload all user-facing functions

Aside from having no drawbacks, this allows people to lazily load `git-gutter-plus`.

I suppose my use-case is rather odd. I use `diff-hl` for highlighting and `git-gutter-plus` for staging in git. (I use `diff-hl` because I work in subversion, where I use `psvn`). To this end, I do

```emacs
(with-eval-after-load 'git-gutter+
  ;; leave highlighting to diff-hl
  (progn
    (setq git-gutter+-view-diff-function (lambda (&rest args))
      git-gutter+-clear-function (lambda (&rest args))
      git-gutter+-window-config-change-function nil)))
```

I intend to `(git-gutter+-mode +1)` on load, and load `git-gutter+` via autoloading.