Add a take_every function.
Add a `@typedoc` attribute to document types

Also a new `Kernel.Typespec.beam_typedocs` function to get the typedoc
information.
Remove unneeded empty lines in the typedoc tests.
Use `typedoc` attribute to store typedocs.

This requires a bit of a workaround because `typedoc` is also used to store the
doc of the next type to be defined. We store typedocs in the docs table when
types are defined and later filter them out and put them into `typedoc`.
Add Enum.concat/1,2 and Stream.concat/1,2
Deprecate List.concat/1,2
Replace occurrences of List.concat/1,2 with Enum.concat/1,2
Move the List concat tests to Enum
Add support for enumerables of enumerables
Add tests for Stream.concat/1,2 and Enum.concat/1,2
Merge pull request #1660 from betawaffle/enum-concat

Add Stream.concat/1,2 and Enum.concat/1,2
Add note to Enum to clarify what's returned

In particular clarify that infinite streams don't work with many of the
functions.
Merge pull request #1662 from pminten/note-about-enum-list-return

Add note to Enum to clarify what's returned
Improve Enum docs
out of it -> as result
Make a distinction about eager and full evaluation of the collection
Fix Stream.take/2 and Stream.take_while/2 for Stream.Lazy
Markdown rendering fix
adding tests for ipv6 addresses on URIs
handling IPv6 addresses on URIs

* very naïve and permissive regex to check for IPv6 addreses.