Operators + and * work without args, fixes #372

Like other lisps, operators `+` and `*` return their identity values
when called with no arguments. Also with a single operand they return
the operand.

This fixes #372
Define kwapply as a macro
Define apply if python3
Added apply tests
removed unnecessary import
Make apply api-compatible with python (args is not mandatory)
Allow calling kwapply with mixed names and dicts
Bootstrap a macro error-reporting test file
language.hy whitespace fix
Whitespace fix
added for and with macros

Fixed up anaphoric.hy and added the tests too native_tests/__init__.py

added __init__.hy