Detect incomplete records; clean up code

Make use of itertools.izip_longest to iterate over the file 4 lines at a time.
If an incommplete record is found at the end of the file, raise an error.
Add test/data with an incomplete record

Fixes #398
pep8 fix; trailing whitespace
python 3 fix
Address comments from @gregcaporaso
Merge branch 'master' of https://github.com/biocore/scikit-bio into issue-398

Conflicts:
	skbio/parse/sequences/fastq.py
Merge pull request #399 from adamrp/issue-398

Issue 398