structured message for selector; matching functionality

In response to https://github.com/GoogleCloudPlatform/kubernetes/pull/360. This is an incremental change -  added structs do not fully implement Selector interface.