Fix a few remnants of variance in `IndexedContsT`

Changed two `<:<`s to `=:=`s.
add new method MonadPlus#separate
MonadPlus#separate test
add more explicit return type. s/private[scalaz] trait/private trait/
fix issue where x would be evaluated twice.

same issue #352
Merge pull request #459 from pthariensflame/patch-1

Fix a few remnants of variance in `IndexedContsT`
Merge pull request #460 from xuwei-k/MonadPlus-separate

add new method MonadPlus#separate
fix another stack overflow error when parse large CDATA
add test for #456
Merge pull request #464 from xuwei-k/xml-stack-overflow

fix another stack overflow error. add test for #456
Merge pull request #463 from xuwei-k/private-explicit-return-type

add more explicit return type. s/private[scalaz] trait/private trait/