added simpleinjector implementation and tests