Fix RVM directory to be repository root.
Start splitting the block and initializer ways.

Modify TyphoonFactoryProvider to delegate the actual work of creating the
method from the protocol to TyphoonAssistedFactoryMethodCreator.
TyphoonAssistedFactoryDefinition stores subclasses of
TyphoonAssistedFactoryMethod instead of the previous array pair. The block are
now stored in TyphoonAssistedFactoryMethodBlock, where the actual work is done.

Similarly, TyphoonAssistedFactoryMethodInitializer holds the new code to
configure the mapping between the factory method and the initializer. A lot of
little classes help (TAFInjectedParameter, TAFParameterInjectedWithProperty,
TAFParameterInjectedWithArgumentIndex...). The TAFMethodInitializerCreator is
currently unimplemented.

(jasperblues/Typhoon#102)
Factory method creation from an initializer description. (WIP)

TAFMethodInitializerCreator will be split in several smaller files.
InitializerCreator creates TAFMethodClosures and stores them in a static
global NSDictionary. The closures need to live while the methods can be called
and could be a memory "leak" if the user decides to remove those methods or
entire classes from the runtime. Not very usual, so I think the solution is
"good enough".

TAFMethodClousure is where the work is done. The class describes both the
factory method and the initializer to libffi, and creates a closure that ties
them together. Many lines are taken and slightly adapted from Michael Ash
amazing MABlockClosure.

There is a small "proof of concept" test for the InitializerCreator.

Fix a copy/paste bug in the TAFMethodCreator convenience method.

TAFMethodBlockCreator and TAFMethodInitializerCreator share the code to look
for a ObjC method description.

Return the TAFMethodInitializer parameter descriptions sorted according to
their parameterIndex.

Update Pods.

TODO: lot of error checking
TODO: lot of commenting

(jasperblues/Typhoon#102)