Add with-gershwin for writing Gershwin within Clojure expressions

This will allow, for example, using regular Clojure to implement protocols, but allow the body of a protocol function definition to consist of Gershwin forms using Gershwin semantics where possible.
Add newline, read, read-line, read-string
Add subvec, subvec-from
Remove unused branch of logic in wrap Gershwin
Support Gershwin words that are not name-munged

This, along with with-gershwin, will allow properly handling functions that need to be definedand attached to vars via purely Clojure features (e.g., protocols). Before this commit, Gershwin extensions to the compiler only looked for name-munged vars suffixed with __GWN__ when trying to resolve a symbol as a word. This change falls back to checking the non-name-munged var for {:word true} metadata as well.