ENH: Added TrialHandler support to ioDataStore

Standard psychopy TrialHandler's can now be used to create a table in
the ioDataStore which can hold the values of trial rows as they are used
during the experiment. See
psychopy.iohub.client.ioHubConnection.createTrialHandlerRecordTable
method comments for usage example.

The ioHub ExperimentVariableProvider class should likely be deprecated
in favour of using psychopy's standard TrialHandler.
Merge branch 'master' of git://github.com/psychopy/psychopy
ENH: Tobii ET Calibration improvements

* Tobii ET Calibration improvements (NOT BACKWARDS COMPATIBLE):
- Animated calibration target now an option
- Increased control over how circle target type looks
- Feedback for head position within headbox when system setup starts
* Merged psychopy MASTER changes.
ENH: iViewX Common ET Interface update

- iViewX Common ET Interface update now uses event call backs instead of
polling. (Thanks to SMI for determining why callback event notification
was not working in python).
- Updated default config settings for SMI and Tobii implementations.
- Updated eye tracking demo to use new config settings
Merge branch 'master' of git://github.com/psychopy/psychopy
ENH: Added another iohub eye tracker demo

Shows using a TrialHandler for IV / DV information and having IV / DV
values saved to the ioDataStore hdf5 file so then can be used to filter
/ group events read from the ioDataStore during data analysis.
Merge pull request #400 from jeremygray/master

test microphone.py (but no-go on travis-ci)
Merge pull request #401 from jeremygray/master

TEST microphone.py - no sound
Merge pull request #403 from isolver/master

ENH: ioDataStore TrialHandler support and SMI + Tobii Eye tracker improvements.
BF: if you closed the Coder window the checkSave>cancel was not working