Support conditional compilation of driver support

The header now contains macros to allow for removing UART or Wiegand
support. This allows for an even smaller footprint in terms of flash
size. By default both are enabled.
Support restarting RFID communication

If a continuous reading of RFID tags is desired, the board must be
powered off for a few miliseconds after reading it to allow for another
read. After this reset, the serial communication must also be restarted.
The new restart() methods allows for this.

Additionally, this method can be used to force that the internal
SoftwareSerial becomes the active listener again (there can only be one
active listener for SoftwareSerial at a time). This is useful because
the RFID is typically initialized as a static variable, but
SoftwareSerial::begin() is only called in setup() -- afterwards, making
this the active listener. In my case I have an Arduino Fio with XBee
(therefore hardware serial is occupied), an RFID reader, and a
SoftwareSerial for debug output.