basic timeslice stuff seems to work. now need to clean up and add more functionality