Timer -> Platform.runRepeated
Split up the main rendering into smaller methods
Clean up the worker message system as much as possible for now