Make HyObject.replace more resilient

This makes it work on quoted objects
Add macroexpand to core/language.hy
Added a simple test for macroexpand
Added documentation for macroexpand
Added macroexpand-1
Fixed --name-- scope problem using ugly inspect code
meth wasn't accepting correctly its parameters
Now also accepts more than 1 statement in the code part of the macro
refactored to use only 1 codebase (no more route != route-with-macros)
Fixed docstring
Added meth tests by mocking a Flask app
Add py_compile.{MAGIC, wr_long} to hy._compat.

Closes #344.
Adding missing AUTHORs from the git log. Sorry, folks.
No fox for you.
Merge branch 'master' into pr/397

Conflicts:
	hy/importer.py
Merge branch 'better-macroexpand' of https://github.com/sbp/hy into sbp-better-macroexpand

Conflicts:
	hy/core/language.hy
	tests/native_tests/language.hy
Whitespace fix
Merge branch 'meth-fix' of https://github.com/Willyfrog/hy into Willyfrog-meth-fix

Conflicts:
	tests/__init__.py
Give a whack at Python 3.4 support

 This adds ast.arg for Python 3.4+, for FunctionDef args and other
 args (starargs, kwargs)
Merge branch 'master' of github.com:hylang/hy into paultag/bugfix/python3.4
Merge branch 'master' of github.com:hylang/hy into paultag/bugfix/python3.4
Flake8 style fix.