feat(utils): add support to inject options to constructors
chore(order): refactor to have a clear separation of usages of angular services
chore(selection): move some variables to private object
chore(example): update example to extend selection and move order to parent to work with the repeater