Also switched the Play method to use sleep rather than a busy wait