Add abstraction layer to allow parallel use on linux

Signed-off-by: Mark Hymers <mark.hymers@ynic.york.ac.uk>
Add psychopy API compatible wrapper for inpout32

Signed-off-by: Mark Hymers <mark.hymers@ynic.york.ac.uk>
Refactor parallel port access to use classes instead of globals.

Move different methods into their own classes which carry their
own state.  In order to maintain the existing API, we now
init the variable in psychopy/parallel.py as an object instead
of just a base address.  This allows us to abstract out which
platform we're on.  It also helps because we can pass references
to the parallel port handling code to other routines as necessary
and they don't need to care about how the port is being accessed.
Direct class usage also allows easy handling of multiple parallel
ports.

Signed-off-by: Mark Hymers <mark.hymers@ynic.york.ac.uk>
ENH: slightly quicker to delete the contents of a list than delete the list (thanks Sol)
DOCS: minor
Add readData routine

Signed-off-by: Mark Hymers <mark.hymers@ynic.york.ac.uk>
Sort out documentation for parallel refactor

Signed-off-by: Mark Hymers <mark.hymers@ynic.york.ac.uk>
Get logic right way round

Signed-off-by: Mark Hymers <mark.hymers@ynic.york.ac.uk>
Place files in parallel/ directory

Signed-off-by: Mark Hymers <mark.hymers@ynic.york.ac.uk>
Cleanup left over port objects

Signed-off-by: Mark Hymers <mark.hymers@ynic.york.ac.uk>
Add changelog entry

Signed-off-by: Mark Hymers <mark.hymers@ynic.york.ac.uk>
Merge branch 'master' of github.com:psychopy/psychopy
Merge branch 'parallelrefactor' of https://vcs.ynic.york.ac.uk/git/public/users/mark/psychopy
DOCS
BF: dual screen option was not working under linux (thanks Robert Muil)
BF: Movie components from Builder weren't resetting the routineClock (non-slip timer) when they finished

Routines that are not non-slip safe should always reset the routineClock, no matter how they end. Previously it was assumed that the clock only needed resetting when the subject forced end of routine with a keypress.
Merge remote-tracking branch 'rem-jeremy/master'

Conflicts:
	docs/source/changelog.rst
	psychopy/CHANGELOG.txt
BF: initPyo several small fixes

- syntax error in raise ValueError
- need pyo imported to use microphone
- check for and set maxChannels
- detect that the server actually works, or provide message