Consolidated dirty-checking logic into DirtyCheck singleton class
Added 50ms max update limit
Closes #10