Better grammar in some errors
Type check call params, even if there was an error with the function
Allow void to indicate parameterless function
Use (void) for function declarations