BF: Mouse component should not store list of vals if only storing 'on click'
BF: see description please

- changed iohub_keyboard and iohub_mouse basic demo's to have a time out
of 15 sec of no event activity. Added extra text indicating what to do
and how to exit each as well.

- Added note to custom install guide re: gevent 1.0 + required.

- Added getHubServerConfig() method to ioHub connection

- Optimized device event listener _handleEvent() code.

- Fixed support for ESC out of calibration routine for Tobii eye
tracker.

- Windows OS: Fixed issue with mouse events not being allowed outside of
psychopy full screen window even when this constraint was not specified
in user script.

- Removed extra '\\n\\r' from end of all iobub msg requests and
responses. No longer needed since msgpack is sole encoding/compression
source.

- Added forced greenlet yield to next greenlet even if current greenlet
is polled and poll duration >= polling interval. Will make no difference
on fast computers but may make iohub Server more responsive on slower
computers.

- Added logic in variableProvider class which determines longest string
in all possible values for a string condition variable and uses that as
the max str length for the trial condition table in the ioDataStore hdf5
file.
ENH: EventPublisher and RemoteEventSubscriber

- Added EventPublisher and RemoteEventSubscriber device types to
psychopy.iohub.devices.network.
- Added simple localhost example using both devices to
psychopy.demos.coder.iohub_extended: pub_sub_device demo folder.
Merge pull request #347 from isolver/master

BF: see description please
Merge branch 'master' of github.com:psychopy/psychopy
BF: Mouse component should not store list of vals if only one will be collected
BF: very minor buglet in Grating Component that had no detectable effect on anything (?)
ENH: Added Polygon (ie shape) Component to Builder
DOCS: minor addition to doc for Polygon Component