Move zipmerge to a standalone module

This PR is moving the implementation of zip-merge algorithm from [loopback-phase](https://github.com/strongloop/loopback-phase/blob/314143f899eefac97ca2eec0030da8fd512677af/lib/phase-list.js#L182-L214) to a new module, so that it can be used on its own (e.g. in loopback/express router).

This is a part of https://github.com/strongloop/loopback/issues/895

/to @raymondfeng please review
> Please add a test to cover conflicting orders.

Good catch!