Make Field, MessageType and ActionType descriptions optional.
Merge branch 'no-failure-fields-14' into simplified-types-2

Conflicts:
	eliot/_validation.py
Add fields to the public API.
Implementation of fields(), a shorthand for creating Field lists for
MessageType and ActionType.
Documentation for the new API.
Implement Action.context(), a context manager that doesn't actually
finish the action.
Merge branch 'explicit-action-finish-12' into non-finishing-context-17
Document Action.context().
Fix pyflakes issue.
TOX file.
Switch Travis-CI to use tox.
Guess tox isn't pre-installed on Travis.
Update documentation and external facing signatures to the new interface
where Logger does not serialize to JSON.
Update destination tests to the new division of responsibilities.
Update Logger to no longer do JSON serialization.
Fix some line length issues.
Do JSON serialization in ThreadedLogWriter, since Logger no longer does
it.
News entry.
Update documentation to note API changes.
Merge remote-tracking branch 'refs/remotes/origin/master' into serialization-in-destinations-44

Conflicts:
	eliot/tests/test_output.py