RACSignal contract

Part of #304.

[Rendered Markdown](https://github.com/ReactiveCocoa/ReactiveCocoa/blob/signal-contract/Documentation/DesignGuidelines.md#the-racsignal-contract)

Note that this doesn't include the "Side effects occur for each subscription" section, because @thenikso is already working on that in #306.