Reintroduce RACSignalProvider as RACSignalGenerator

Originally from #874, `RACSignalGenerator` is explicitly an abstract
class, and expected to be subclassed. Side effects can be implemented
in subclasses if desired.
Publicize RACDynamicSignalGenerator
Add support for generators that reference themselves
Add a generator that records its transactions
Clean up code example indentation
Fix example condition
Simpler, less misleading terminology

@jonsterling
Merge remote-tracking branch 'origin/3.0-development' into signal-generators

Conflicts:
	ReactiveCocoaFramework/ReactiveCocoa.xcodeproj/project.pbxproj
Clarify signal generator subclassing
Add -[RACSignalGenerator postcompose:]
Add -asTransactionSignalGenerator
Merge branch '3.0-development' into signal-generators

Conflicts:
	ReactiveCocoaFramework/ReactiveCocoa.xcodeproj/project.pbxproj
Merge branch '3.0-development' into signal-generators
Remove RACTransactionSignalGenerator
Unit tests for RACDynamicSignalGenerator
… changelog …
Refactor -concat: to honor synchronous disposal
Reimplement -repeat with a reflexive generator
Use -subscribeSavingDisposable: within -catch:
Reimplement -retry: with a generator