Added support for prasing Lein project.clj files and files without ns decls

This patch addresses two related features:

 - Provides the ability to parse and generate docs for a project.clj file.
- Also fixes a bug where if a file had no `ns` decl then Marg would generate odd docs. Now the filename itself can stand-in for a missing namesape.  This is particularly useful for project.clj and data_readers.clj files.
Tiny nit, but wouldn't `(empty? ns)` suffice?  Is there a Clojure where `(empty? nil)` is false?