Merge pull request #2 from sanmiguel/master

Fixes #1
Refactor code to ease maintenance

The following bugs were fixed during refactoring:
 * Compiler can be used standalone without side effects
 * The local compiler/shellpipe is not changed after writing a file
 * Error text will now be echoed in .hrl files
 * Error text will only be echoed for the last check
Merge pull request #3 from fishcakez/refactor

Refactor code to ease maintenance
Allow compiling of multiple files

New usage:
:make src/filename1.erl src/filename2.erl escript.erl

Notes:
 * Does NOT automatically include the current file.
 * Does NOT allow patterns (such as src/*.erl) or directories.
 * Exit status is 1 when an error is found.
Use location lists

 * Use lmake instead of make on BufWritePost
 * Signs persist for all files until errors are fixed
Merge pull request #4 from fishcakez/location_list

Use location lists instead of quickfix lists
Add vim docs
Fix "makeprg" in erlang.vim

Previously, ":make" didn't work, because the name of the current file was not
passed to the erlang_check script.
Find rebar.config automatically
Improve rebar option processing

- lib_dirs are used only for their include dirs now, and sub_dirs are used for
  their code path.
- Remove the "warnings_as_errors" item, because we don't want that during
  compilation with Vim. (See more info in the commit body.)
Use "{capture, none}" in re:run
Check the return value of "escript -s" instead of analyzing its output
Add type specs and edoc
check_file now returns ok instead of {ok, term()}

This commit is just a refactoring. I made {ok, term()} into 'ok' because nobody
used the term returned.
Simplify main function
Add --verbose option and help text
Add --outdir option

The --nooutdir option may be useful when we already generated a command that
includes "--outdir", and we want to override it by only appending new options.
Add ErlangToggleShowErrors command
Remove "silent" from Erlang(Dis|En)ableShowErrors
Indent ftplugin/erlang.vim as the other files