1.0

/to @bajtos 
/cc @raymondfeng 

Please review the following.

https://github.com/strongloop/loopback-phase/blob/1.0/example/middleware.js => example for our middleware use case.

https://github.com/strongloop/loopback-phase/blob/1.0/test/phase.test.js => the phase API / test

https://github.com/strongloop/loopback-phase/blob/1.0/test/phase.test.js => the phaseSet API / test

Also take a look at the example in the README.md. Everything else is copied from loopback-boot.
Now this is super cryptic, it took me like a minute to decipher what is it doing.

Proposed version:

```js
return phaseOrArray.map(self.add.bind(self));
```