Revert problematic backbone commit per issue #2508.

The is a PR to revert the commit c4d0c9a5 to add generics to backbone. This commit breaks existing code and changes the tests to make it pass, which causes lots of backward compatibility issues among other things.

More is explained on issue #2808