Update Sphinx dependancy away from beta

We were depending on a beta version of sphinx
Ignore .pyd on Windows
Update PWA for C89 compatability

This mostly involves removing the C99 flag and inline loop
declarations
Some whitespace updates
Fix incorrect array initialisation

You can't initialise an array with a dynamic variable!
Round doesn't exist on Windows

Had to make a few changes for compilation using visual studio
because round is only included in C99! Therefore, I removed
some seemingly useless floor/ceil calls and defined the
round function.
Merge pull request #256 from patricksnape/windows

Windows Fixes