Add identity function named cabal#Id

This was needed for testing higher-order functions.
Add VimFlavor file for vspec tests

`vim-vspec`'s test runner requires a list of dependencies be declared in
a file named `VimFlavor`.
Add initial tests and test boilerplate

Add test boilerplate for each public function; basically, unimplemented
tests for each one. Add tests for each `cabal#dict#` function, and
several `cabal#` functions.
Formatting: rename lnum to line_number.
Formatting: add alias for inscrutable line('$')
Fix fencepost bug in s:IndentOfPreviousField
Formatting: remove local variable
Move utility code into separate autoload namespace

This makes calls to utility functions more readable and will make it
easier to separate out a utility library bundle in the future.
Wrap maktaba functions

This decreases coupling with maktaba and will enable removing it in
the future if so desired.
Ensure all current enumerated values are included

The syntax highlighter and completer should now have access to all
built-in enumerated values for Cabal fields. Some still won't
highlight, however, until Cabal's selective case sensitivity is
addressed properly in `cabal/syntax.vim`.
Prevent omnicompletion from selecting every string

Omnicompletion was broken due to a transposition of conditional
branches in fn#pattern#Match.
Formatting: Haddock syntax matches

- Sort lists.
- Rename Haddock match groups.
- Extract syntax cluster function.
Bump version number
Merge pull request #16 from ianbollinger/develop

Merge v0.0.1 into master branch