Add select blocking to serial read; eliminate polling loop.