delegates, NotificationObjectBase and cleanups

- ADD: System.Func delegates for compatibility reasons
- ADD: easier way to handle property changes by using internal
dictionary instead of separate fields
- ADD: ReceiveNotificationFromAttribute that can be used to
automatically raise property change events for a marked property if
property change events of other events were raised
- CHG: moved all parts of NotificationObjectBase class to one single
file
- CHG: code cleanups
cleanups

- CHG: moved all parts of TMObject to one single file
- CHG: other code cleanups