Add return type to apply methods, changed some to use Aux
Merge pull request #175 from stacycurl/apply-aux

Add return type to apply methods, changed some to use Aux
Common assertTypedEquals and assertTypedSame

They are now in a common `testutil` object instead of being implemented
in multiple files.

First suggested in
https://github.com/milessabin/shapeless/pull/165#issuecomment-48813493
Merge pull request #176 from ceedubs/testutil

Common assertTypedEquals and assertTypedSame

LFTM. There's an assortment of other assertion methods around, maybe they could be moved to testutil too.
Added head & tail to Coproduct