Change kernel.set("property", value); to kernel.map("property").to(value)
Major refactor of di.js to split cache, injector and kernel
Provide a more complete example using ninjas and weapons, as this is clearer than using targets and instances. Completely removed the HTML example.
Provide a multilogger to provide details in Jasmine log and show how we can use decorators to hide the complexity of proxies in the injected objects