ioHub - psychopy integration work, new docs theme

- ioHub and psychopy now use the same high resolution time logic (ioHub
imports clock.py from psychopy if psychopy is installed, otherwise uses
a trimmed down version of the existing code.)

- new ioHub Experiment Device type added called LogEvent. Integrates the
psychopy logging capabilities with ioHub.
a) The ioHub server can create LogEvents, which are saved to a log event
table in the dataStore, and when the experiment script gets experiment
device events (by calling io.getEvents() or io.experiment.getEvents()),
any new log events are sent to the experiment process as well as the
already existing Message Event type. Prior to the user script receiving
the experiment event reply, the log events are removed from the
experiment event list, each is submitted to the psychopy logging.log
function, and the remaining Experiment Message events (if any) are
passed to the user script as before.
b) (Needs further testing) A user script can also use the iohub
experiment device as the logging mechanism by using io.experiment.log
(or .warning, .error, .critical, etc, all the same ease of use functions
psychopy logging provided). If the iohub experiment is used for logging,
then a log event is sent from the experiment to ioHub, processed and
saved to the dataStore in the log table, and also sent back to the
experiment process as described in a) so it is logged by the psychopy
logging module as well.

- Updated the ioHub html documentation theme to something cooler. ;)