setup the controllers

1. setup `SignalViewController`, `ViewController`, and add an signal
button and segue for push navigation
2. add an briding header for import ReactiveCocoa
finite signal without capturing self

The code use [1,2,3,4] sequence signal here for an finite signal, but
it the rule should also apply network request and other finite signals

The initial code is here:

	class SignalViewController: UIViewController {

	    weak var signal: RACSignal! // use weak var so taht
`SignalViewController` will not retain the signal

	    override func awakeFromNib() {
	        signal = ([1,2,3,4] as NSArray).rac_sequence.signal()
	        signal.subscribeNext { (e) in
	            println("number \(e)")
	        }
	    }

	    deinit {
	        println("deinit SignalViewController, and signal is \(signal)")
	    }
	}

To test the result, nothing special here

1. run the app with current commit
2. push the signal view controller, and it print the signal 1,2,3,4
3. pop the signal view controller, view controller get deallocated, and
echo the message, and found the signal is already deallocated
access self in closure

we modify the code from

	signal.subscribeNext { (e) in
	  println("number \(e)")
	}

to

	signal.subscribeNext { (e) in
	  println("number \(e) from \(self)")
	}

and then push/pop `SignalViewController`, the `SignalViewController`
still get deallocated successfully.

We verified that

1. The signal was retained by the subscriber(yes, the implicit
subscriber we create using `signal.subscribeNext`). If it is not
retained by subscriber, the signal will deallocated immediately after
alloc, because `var signal` is a weak variable, which means not
retained by `SignalViewController`
2. we guesss both `signal` and subscriber are deallocated after the
signal completed, because when we pop `SignalViewController`, and the
`signal` is nil. We will try to verify that later