Report setup_all errors and mark tests as invalid

Closes #878
Add String.to_integer/1 and String.to_float/1

Given a string that starts with a valid integer, String.to_integer/1
returns a tuple {result, remainder} where remainder is the character
string following the valid integer. If the input is not valid as
specified by Erlang's :string.to_integer/1, the function returns
:error.

Given a string that starts with a valid float, String.to_float/1
returns a tuple {result, remainder} where remainder is the character
string following the valid float. If the input is not valid as
specified by Erlang's :string.to_float/1, the function then calls
String.to_integer/1 and returns that value, which is either an
{integer result, remainder} or :error.

This latter behavior allows you to say String.to_float("34")
without generating an error.
Make String.to_float always return a float

Added code to make String.to_float("34") return {34.0, ""}
Add tests for String.to_integer and String.to_float
Fix String.valid_codepoint? tests
Add String.valid?
Merge pull request #1058 from meh/string-valid

Add String.valid?
Make String.valid? work on characters
Support options from macros and @attributes in import, alias and require
Accept macro/@attribute options on quote
Update CHANGELOG
Merge pull request #1030 from ericmj/report-setup-all-error

Report setup_all errors and mark tests as invalid
Update CHANGELOG and verbage from previous pull request
Expand macros and quoted variables inside << >>, closes #1063
Revert "Expand macros and quoted variables inside << >>, closes #1063"

It broke the build. Reopens #1063.

This reverts commit 93f71c86242155fc026c2f814947e77621714432.
Add missing unquote/unquote_splicing documentation
Expand macros and quoted variables inside << >>, closes #1063
Ensure record args are evaluated in the parent context, closes #1065
Implement capture_io for ex_unit
Propagate dependencies in mix tasks

Closes #1036