timer: implement timer, preliminary work on timer bank