ENH: Added SerialDevice base class

Makes it easier to add serial port devices by:
	- searching for appropriate port on any platform
	- calling to test whether the device is present and talking
(override isAwake() method)
	- close the port when device garbage collected
	- send commands and receive responses more easily

also updated changelog