split packages and added tests
changed NamedPromiseUsage to use only NamedPromises