added more event logic and pushed some methods on time to its interface