Reformatted for consistency, internally and with OF.
Added a clearDisplays() method, which is called by the destructor and right before detecting displays.
Added shared instance getter.
Switched to using shared instance in example.
Added callback for when display config changes, and updated example.
Automatically detecting displays, no need to call detectDisplays() explicitly.
Filtered the callback flag data to only trigger an event once per change.