introduce explicit singleton strategy
introduce constructor options
add test case for single value constructor invocation
implement multi-value constructor invocation
fix npm test
add travis integration