Added timers for self-updating

- Refactored code slightly (still need to figure out how to break up
files)
- Removed a redundant event in the route query flow
- Cleaned up route drawing (previous routes are cleared)