Docstring and PEP8 fixes.
Moved validate() function from event to quakeml.

obspy.core.event.validate() is now obspy.core.quakeml.validate(). It
only validates QuakeML files and thus belongs there.
Added option to validate QuakeML files upon writing.

Passing `validate=True` to the write function will automatically test
the created QuakeML against the schema. This is not a sure way to tell
if the created QuakeML file is valid but useful nonetheless. Also
activated it in the tests.
Adding test for creating simple event.

Fixing some bugs in the process. Also changed the ways strings are
compared in the QuakeML test suite. Now difflib is used so it is useful
even for very large strings.
AssertionError in case of failing validation.

The writeQuakeML(..., validate=True) function now raises an
AssertionError in case the validation fails.
Updated all docstrings to QuakeML 1.2.

There are probably still some smaller issues left but all in all it
should now be up-to-date now. Fixes #447.
unittest backwards compatibility

aka be nice to python 2.6 ;)
need to close file if Exception gets raised