Sponsored day report

report

Rewrote the property editor dialog with DAD. This obsoletes the old, gtk-only implementation and removes a bunch of hid-to-propedit API, making the HID API much simpler. Also made the propedig window non-modal.

The new concept, scope of propedit helps resolving issues about selection and global vars: previously we had to select the objects to edit because propedit worked only on selection. This interfered with user activity and made it impossible to directly edit abstract entities like layers, layer groups or the board metadata. With scopes, each propedit instance remembers what exactly it should be working on.