inputParser: fixed unmatched argument handling

Fixes issue 236: when an unmatched argument is present,
MATLAB crashes with an obscure error. Now MATLAB carries on while
keeping track of the unmatched arguments when instructed to do so
MSGIDs added to warnings and errors

MSGIDs allow for better error checking.
Also used the built-in sprintf functionality of error/warning
where string concatenation was used.
Replaced errors starting with "Function XXX" with a proper
MSGID of the form  "matlab2tikz:XXX:msg"
Pre-alloc cell in prettyPrintOpts

Cell pre-allocation for speed in MATLAB
translateMarker simplified

big switch-case with nested ifs replaced by switch-case followed by if
Automatically import plotmarks in standalone mode

plotmarks is required for some marker styles, but it wasn't imported
in the standalone template, thus causing possible bugs
Merge pull request #238 from egeerardyn/msgid

MSGIDs added to warnings and errors
Merge pull request #240 from egeerardyn/translateMarker

Translate marker
removed unused function append()
Merge pull request #241 from egeerardyn/prettyPrintOpts

Pre-alloc cell in prettyPrintOpts
Some MSGIDs added to error calls

No error calls without MSGID left according to mlint
join: uses strategy of strjoin to concatenate

- First convert all numeric values to string
- Then create a cell array twice the size of the input
- First row is the input, second row contains the delimiter
  except at the last position
- Concatenating over the linear index of the cell array, will give
  a properly joined string

This removes the need for a growing string in a for loop.

This performs the same functionality as strjoin in MATLAB, but
as this function was only introduced in a fairly recent version
(R2012a/b, I guess), it cannot be used for backward-compatibility reasons.
Removed returns and empty lines at end of function

 Return as a last command is superfluous -> removed
 Some blank lines removed as well (especially at the end of functions)
Merge pull request #242 from egeerardyn/cleanup

Cleanup
VersionControlIdentifier

When possible, the commit identifier is added to the output.
The implemented method relies upon either:
 - a .git directory present in the directory above matlab2tikz.m
   (as is the case in Nico's repository)
   this should contain a HEAD file (standard for a git repo)
 - a .commitinfo file present in the directory containing matlab2tikz.m
   (when the above is not present)

The tree-ish in this file is read (and followed when it is of the form ref:...
 until it is no longer a dynamic reference OR an indirection limit is reached).

The method does NOT rely on git being installed on the user's system, but relies
directly on the simple file structure of a git repository.

All errors are caught and result in no commit information to keep this
auxilary information from breaking matlab2tikz as a whole.
join: fix indexing bug 1 -> k
join: fixed validity condition

Previous condition "~iscellstr(x) && ~isnumeric(x{1})"
would fail for `{'bla', 12}` which could be treated by
the function. Actual condition should check every entry
for char or numeric
Merge pull request #244 from egeerardyn/fixJoin

Fix join
extraCode: pass code verbatim to output

solves https://github.com/nschloe/matlab2tikz/issues/233
This prevents escape characters from being expanded
using the code suggested by @drgz
Merge pull request #245 from egeerardyn/extraCode

extraCode: pass code verbatim to output
Merge pull request #237 from egeerardyn/bugfix236

inputParser: fixed unmatched argument handling