rename variables so Prelude.join will not cause problems

* background:
http://www.haskell.org/haskellwiki/Functor-Applicative-Monad_Proposal#Current_stage:_Prepare_GHC

* the change happens in ghc-7.10, and these changes fix warnings with 7.8
build with ghc-7.7

this is probably the wrong approach and likely it breaks code that
mentions the BoundsOf/ContainerOf