Multithreading!

- Removed both timers and implemented a multithreaded approach to help
deal with the burden put on the main thread which was assumed to be
bogging down the application over prolonged use.