unacceptable errors; added PID library to help tune performance, about to re-implement