Additional work.
Remove abstract types and move to type arguments.
- Main point is to make it easier to use with IDEs although it sacrifices capabilities
Remove "Linked" type alias and remove need for LinkChainingStrategy.
Removed BiDi type alias.
Renamed BiDirectional to Step.
Minor cleanup.
Rename add'l remaining references to BiDirectional => Step.