timer should be mostly complete.. maybe add global and getters/setters later