Support gzip and bzip2 compression for StateDataReporter (based on filename
extension). Users were already able to pass gzip.GzipFile objects and
StateDataReporter would write compressed data. bz2.BZ2File objects also worked
after I removed the self._out.flush() calls.
Add sulphur and aluminium aliases.

Fix small bug in internal/pdbstructure.py.
Add the flush calls back to statedatareporter properly protected by try-except.
Merge pull request #178 from swails/master

Support gzip and bzip2 compression for StateDataReporter (based on filename extension) and other small fixes