universal new lines and shell not on win32
Fix corner case where EMBOSS_ROOT does not exist.

Previously we would try 'del name' where 'name' was undefined.
I'm also adding a new explicit error message when the EMBOSS
installation is broken ( not pointing at folder).

Also catch corner case where embossversion could return nothing.

Also try to cope if there is a space in the EMBOSS path (although
EMBOSS itself doesn't recommend this and it doesn't seem to work).
Quote/escape program names if they contain spaces.

I've tested this under Mac OS X using test_Clustalw_open.py
with a hack to set clustalw_exe to point at a copy of the
binary placed in a folder with spaces in the name.

I've tried testing this under Windows using EMBOSS but here
EMBOSS itself breaks if installed to a folder with spaces.
The new example in the docstring is therefore potentially
misleading.

Instead testing with ClustalW again, it seems Windows XP
itself must handle this as a special case - this works
(new Biopython wrapper behaviour):

"C:\Program Files\ClustalW2\clustalw2.exe" -infile=Registry/seqs.fasta -align -outfile=temp_test.aln -newtree=temp_test.dnd

However this worked too (old Biopython wrapper behaviour):

C:\Program Files\ClustalW2\clustalw2.exe -infile=Registry/seqs.fasta -align -outfile=temp_test.aln -newtree=temp_test.dnd

This suggests this fix isn't actually needed under Windows XP,
but is essential under Linux/Unix/Mac OS X whenever there are
spaces in binary's path.
Update MUSCLE doctest in line with new behaviour
Further test updates due to escaping change
Patch for Python 3 support with Popen.communicate
committed patch from bug report #3433 by Alexander Campbell. Also removed the requirement for Flex in test_MMCIF.
The MMCIF parser is pure-Python nowadays
Thank Alexander Campbell (report and fix for issue 3443 in MMCIFParser)
Revert "Patch for Python 3 support with Popen.communicate"

This reverts commit 912692ee2b57e8c075ba38bdf814c9dbe4f5cdb9.

Unfortunately while the 'fix' made things work on Python 3.1
and old versions of Python 3.2, it breaks on Python 3.2.4
onwards and Python 3.3 and Windows. We should be using (unicode)
strings if calling subprocess with universal_newlines=True
but were hitting a Python bug, http://bugs.python.org/issue16903

See mailing list discussion:
http://lists.open-bio.org/pipermail/biopython-dev/2013-May/010626.html

On option is not to support the older broken Python 3 releases.
Another choice is to use universal_newlines=False and handle
the bytes/unicode conversion explicitly for stdin/stdout/stderr.
Can't use context manager with gzip.open until Python 2.7 (reported by Bryan Lunt)
Skip test failing due to http://bugs.python.org/issue16903

Rather than adding a workaround to the code, we'll probably
just set a minimum verion of Python 3 instead.
Added the capability to set the number of pseudocounts equal to the square root of the number of instances
Also skip test_PopGen_DFDist.py if on old Python 3

See earlier commit 9c16c09806ca4af84f714662e54c9bd3057b0a52 for
test_PopGen_FDist.py to skip the test if on an older Python 3
with http://bugs.python.org/issue16903
Fix Bio.ExPASy.ScanProsite.read in Python 3.

ScanProsite.read fails on Python 3, this fix is backwards compatible
with Python 2.
Merge pull request #184 from luizirber/master

Fix for ScanProsite.read, works with Python 2 and 3
code for dealign with assorted UniProt file formats; contributed by Iddo Friedberg.
New module Bio.UniProt in NEWS file
Must install the new Bio.UniProt module
Expanded jaspar module contributed by Anthony Mathelier and David Arenillas of UBC