initial conversion to scala 2.10, scalaz 7