Translate integTest into a more flexible system to handle multiple facets

Feel free to be critical about the actual syntax, I'm just throwing this out there. It's a little awkward to use Test to create test tasks from a Facet. Still needs docs, but that can be added after we're done with the RxJava transfer.

CC @jmcgarr @rspeildenner
I don't love the name 'FacetDefinition'.  'Facet' feels vague, but better.  Maybe 'BuildFacet'?