Basic typespec docs for functions

No @type documentation yet.

The style used for this is rather ugly, but it does the job for now.
Basic documentation of @type declarations

No links between types and specs and types, unfortunately. That's
somewhat complicated to add because the usual AST to source converter
(`Macro.to_string`) just outputs a simple string.
Don't show complete definition of opaque types
Rename specs to funcspecs for clarity

There's also typespec and the name specs was a bit confusing.
Tests for the types and specs doc code
Hide drop down if item has no children
Merge pull request #62 from jwarwick/arrow

Hide drop down if item has no children
Depend on Elixir master
Add links to type and function spec documentation

In order to keep most of the type linkify specific stuff from
making templates.ex much bigger than it was that has been split
into a separate file. This does create a recursive dependency,
but elixir/erlang doesn't seem to have a problem with that.
Don't nest modules in list view
Merge pull request #63 from jwarwick/flatten

Don't nest modules in list view
Specify proper Elixir version
Reorganize filenames, move autolink to its own module
Merge remote-tracking branch 'pminten/typespecs-rebased' into merge
Adjust typespecs
Remove nest modulee functionality, reorganize code
Use Macro.to_string/2 to simplify autolinking
Rename exdoc -> ex_doc and move templates to inside html formatter
Do bulk autolink on HTMLFormatter.run/2
Provide links to Elixir types