Initial Commit
Add preliminary version of *A2DynamicDelegate*
Allow for later cached retrieval of a dynamic delegate
Update ARC error message
Make the protocol property an unretained relationship
Update with class selectors and properties

- Add protocol's properties dynamically to `A2DynamicDelegate` subclass.
- Change `BOOL` return values to `void`. (You'll know when it fails. Trust us.)
- Move the implementations of the `-implement...`, `-implementation...`, and
    `-removeImplementation...` methods to separate functions.
Verify property names before changing instance variables
Fix punctuation mistake
Fix protocol property assertion
Edit method names and assert descriptions
Remove ARC from the entire project
Remove dynamic delegate as block's first argument
Remove protocol property methods (use KVC instead)
Add method signature check in `-implement(Class)Method:withBlock:`

- Make `DICT_KEY` return `nil` if `selector` is `NULL`
- Rename `BlockSig` to `BlockGetSignature`
- Rename `BlockImp` to `BlockGetImplementation`
- Remove assertions from `-blockImplementationFor(Class)Method:`
Add preliminary version of `A2BlockDelegate`
Remove `A2BlockDelegate` subclass and refactor a *lot* of code
Funnel all `-link...` methods through `-linkProtocol:methods:`
Fix `A2DynamicDelegate` method signature bug
Remove remnant of `A2BlockDelegate` class
Prevent initializing instance of abstract class `A2DynamicDelegate`