Add support for defining dependency factories

Use $zit->set('dep', $zit->factory(function ($c, $param1) {})) to define a dependency as a factory.
Add PHPDoc blocks to all functions