Disable native compilation when on_load attributes is present

This is a work around an Erlang bug, see #845 for more information.
Closes #845.
Add metadata support to ExUnit

Defining setup/teardown/test explicitly is now deprecated.
They should now be defined via their respective macros:

    def setup do
      ...
    end

Now becomes:

    setup do
      ...
    end

When defined using the new format, setup callbacks can
return metadata:

    setup do
      [do_this: :do_that]
    end

And now the test macro can access this metadata:

    test "check metadata", data do
      assert data[:do_this] == :do_that
    end
correct apply/3 example
Merge pull request #847 from jeremyjh/apply-doc-fix

correct apply/3 example
Add support to case templates
ExUnit callbacks must return :ok or { :ok, data }
Deprecate ExUnit.after_spawn callbacks
Release v0.8.1
Add more info to release process
Fix typo in RELEASE.md