corrected code to support ts strict mode
safe.ts
- more tight typings
- added notImplemented stub function
- added fork funtion
- added keys function (like Object.keys but extracts keys type)
- added isKeyof typeguard
- added 'primitive' union type
added EventProvider for the observable