Closes #34: redesigned `autopair-up-list', `autopair-pair-p` and `autopair-skip-p`

- All existing tests pass.
- Respecified one test: autopairing at the beginning of "(])" should happen as it reduces unbalance.
- Now relies purely on `forward-sexp` functions (no more `scan-sexps`),
- Should work with such functions defined with SMIE.
- Leverages paren.el's show-paren-data-function to find matching delimiter
- Probably only works on recent emacsen (24.3 onwards).

More refactorings possible, namely narrowing buffer to the
string/comment when inside such constructs.
Closes #35: redesign to make compatible with (slightly) older emacsen again

Also:
- remove unneeded hack for `global-hl-line-mode` compatibility
- fix indentation and other cosmetic fixes
- internal symbols are now prefixed "autopair--"
- remove byte-compilation warnings about cl-functions
Fix: tests must use renamed symbols from previous commit
Closes #36: use `scan-sexps` again in `autopair--up-list`