Implements a requireJS-ish dependency injection style rather than AngularJS-ish (e.g. [dep, function () {}])