Return type check added
Removed the key's, they are abstract so no use
Readme updated with some HACK info
Namespace fix