"Implementing new operator" guidelines

**:warning: NOT READY TO MERGE :warning:**

[Rendered Markdown](https://github.com/ReactiveCocoa/ReactiveCocoa/blob/new-operator-guidelines/Documentation/DesignGuidelines.md#implementing-new-operators)

To-do:

 - [ ] Prefer building on RACStream methods
 - [ ] Compose existing operators when possible
 - [ ] Avoid introducing concurrency
 - [ ] Cancel work and clean up all resources in a disposable
 - [ ] Do not block in an operator
 - [ ] Avoid stack overflow from deep recursion