Returned instances are injected the component factory (also for blocks!).

This commit completes the previous one, making factories based on blocks also
inject the factory when appropriate.

The idea is using the already working implementation from the initializer
closures: the block turns into the implementation of a hidden method, the
real method gets intercepted by forwardInvocation, which gets redirected to
the hidden method, and the return value gets injected with the component
factory if needed.

Tests added or updated for the new feature.

See #144
Update pods.