Fleshing out gptimer model
Nearly working, simulation only