Restructured everything to use the new serial data listener. Problems
likely, revert to previous revision if necessary.