Make AssistedBuilder follow bindings when creating objects

The motivation behind this is until now ``AssistedBuilder`` requires to be passed concrete class which instance we'd like to build. This patch makes it use the bindings so we can just say that we want the ``AssistedBuilder(SomeInterface)`` and still get the right results when we call ``builder.build``.