ENH: Merge changes from Sol

Source: https://github.com/isolver/psychopy/commit/b1b71406ade314d5d75ed141e57cfa66889a113f#diff-0
Merge remote-tracking branch 'origin/pstbox-subclass' into pstbox-subclass

Conflicts:
	psychopy/iohub/devices/serial/__init__.py