HardwareSerial improvements

This is a new version of #1369, but now against ide-1.5.x instead of master.

In addition, I changed a few things:
 - There is a commit defining _NOP now
 - It is now possible to disable UART instances using a define.
 - I added a commit renaming Serial to Serial0 or CDCSerial (with a #define Serial to select either one in the variant header files).

The commits were reordered a bit, to put the "easy" ones first. In particular, I think that all of them can be merged, except perhaps the latter two, which might still need some discussion.