Fix some low-hanging warnings
Add BsonVariant
Cheat my way around implicit ambiguity issue.

The implicit ambiguity issue only arises when values are involved,
so turn the relevant implicits into methods. That loses the toString
methods for the time being.
Restore quasiquote fix for 2.11.0-M7.

This time also updating the sbt dependencies.
Back to testing on M7 instead of M8.

Since there are a boatload of regressions.