object as value added

There are several methods for `NSObject` support as value in store.

Also some refactoring added