Move port telemetry port configuration logic into common telemetry code.
Update software serial to support RX, TX or RX&TX modes.  Update serial
API to allow on-the-fly changing of serial port mode.  Update HoTT to
change serial port mode when transmitting.
Fixing software serial stop bits.  Was broken since timer frequency
calculation changes in c7de7d2ebc63ae02c598f19e7af3b9673feaae62.
Merge pull request #58 from hydra/softserial-fix-stop-bits

Fixing software serial stop bits.
Update timer handling to support multiple events at the same time.

This can occur when servicing two software serial ports via a multiple
timer channels on the same channel.
Avoid softserial loopback on port 2 on Olimexino boards.
Ignore incoming software serial data that doesn't have a start and stop
bit.  Track software serial transmission and receive errors.
  
Nothing exposes the error counter values yet.
Merge remote-tracking branch 'multiwii/master' into hott-telemetry

Conflicts:
	src/drv_softserial.c
Merge branch 'softserial-track-errors' into hott-telemetry

Conflicts:
	src/drv_softserial.c
Ensure that telemetry state is always updated after initialising
telemetry so that providers can configure the telemetry port as
applicable.
Cleanup HoTT protocol structure, verified against latest code in here:
https://github.com/obayer/MultiWii-HoTT/blob/master/MultiWii_2_1/HoTTv4.ino
Fix an extra byte being sent between the HoTT data and the checksum.
Update HoTT physical connection details (only one diode needed).
Update common telemetry code so that it verifies that the telemetry
configuration is valid.

Internally this uses a flag so that the configuration is not continually
verified.
Rename some telemetry variables and methods to better indicate the
intent of the code and thus the readability and maintainability of it.