Added sampgdk_InvokeNativeArray
Update docs on invokenative
fixed sampgdk_native_invoke_array's signature
Merge pull request #86 from ikkentim/patch-1

Add sampgdk_InvokeNativeArray
Tabs -> spaces
Minimize docs duplication
Cleanup

This makes the two functions more diff-friendly.
Fix typo in CMake macro name
Reduce code duplication in sampgdk_native_invoke()

Implement sampgdk_native_invoke() on top of
sampgdk_native_invoke_array() by building a temporary array of pointers
to arguments (actually two arrays).
Rename va_list overload of InvokeNative() to InvokeNativeV

When you use InvokeNative() with a pointer argument gcc (and probably
others) assumes that you want the va_list overload instead of the ...
one.
Remove unused macro
Remove unused local variable
Add support for simple array natives

This allows you to pass arrays to natives that have array size
passed in the argument next to the array itself. The code does
not yet support functions with a misplaced size argument, e.g.
CreateDynamicPolygon from streamer which has the following
prototype:

native CreateDynamicPolygon(Float:points[], Float:minz = -FLOAT_INFINITY, Float:maxz = FLOAT_INFINITY, maxpoints = sizeof points, worldid = -1, interiorid = -1, playerid = -1);

This also fixes an apparent bug in the 'S' specifier where it allocated
heap space based on the length of the input string instead of the real
size.

Partially fixes #85.
Introduce new buffer size syntax in InvokeNative*

Previously array/string buffer size was deduced from an argument
following it, now the size can be anywhere as long as you specify
the index, or it can be totally fixed, in which case no additional
parameter is needed.

Fixes #85.