first pass at scheduling implemented and working