Add CL handling to hyc

This adds real command line handling to 'hyc' for issue #256

This fix catches missing/unreadable files and prints a nice
error message instead of a nasty stack trace when trying to
compile a non-existent file.

Also add this non-existent file check to hy to prevent the
current stack trace from something like "hy foobarbaz" when
"foobarbaz" doesn't exist.

also changes the failure return value to 2 to match Python.
Add rply to dependencies

Use the hylang fork until mainline grows the source position patch.
Add an rply-based lexer
Add a rply-based parser
Wire the rply parser

Amend the tests to account for the changes
Add some machinery to avoid importing hy in setup.py
Update:

    Updated most methods to replace While with For, and added tons of new tests
    for things like (cycle []) and lists with None's in them.

    thanks @olasd

Add set of new core functions

Add set of new core functions to the stdlib.

Moved the auto-import code from compile_expression to
HySymbol so that "even?' in this style expression will
be found and imported.

(list (filter even? [1 2 3 4 5]))

The core functions are documented in 2 sections, one
for basic functions like (even?..) and (nth ...) and
one for all the sequence functions.

Update: This removes all the caching decorators, misnamed as
'lazy-seq' from the core. All sequence methods now just use
yield to return a generator, so they are Python-lazy

Further refinements of core functions

Cleaned up the docs to use 'iterator' instead of 'generator'

Fixed drop to just return the iterator instead of an extra
yield loop. But also added a test to catch dropping too
many.
Merge pull request #268 from rwtolbert/new_core_functions_3

Add back some missing changes from PR #236
documentation for defun / defn and let
documenting defn / defun
minor fix
Merge branch 'master' into pr/232
Add james@agentultra to copyright header
Merge branch 'master' into pr/271
Add yield from via macro magic.

 This will let us use (basic) yield from behavior from Python 2. This
 isn't complete, and is low-hanging fruit for others willing to hack
 on hy.

 I've also changed the macrosystem to allow for proper bootstrapping.
 This is similar to how it's done elsewhere in the codebase (stdlib
 stuff).
Add "spy mode" to REPL
With the command-line option --spy, the Hy REPL prints the Python
equivalent of each expression before evaluating it.
Merge pull request #265 from rwtolbert/hyc_args_fix

Add CL handling to hyc
Merge branch 'master' into spy-mode
Merge pull request #275 from khinsen/spy-mode

Add "spy mode" to REPL
Merge pull request #266 from paultag/paultag/feature/yield-from

Paultag/feature/yield from