Fixing visibility
Adding public API bind method
[Merge] Several thoughts
Changing generic parameter names to usual functional variables like A - B - F