(a) add filter to query. This makes it easier to support *Changed without having to generate metadata about lots of useless methods. We might remove *Changed in the future, but I still think this is a nice feature for smoke.
(b) changed recorder.dart to automatically include getters/setters for queries. It is the most common use case that you query a member because you want both the metadata and to read/write/invoke it.
(c) add a new smoke implementation to make it easier to debug inconsistencies between static vs mirrors implementations. (I used this while debugging stuffin polymer)
R=jmesserly@google.com
Review URL: https://codereview.chromium.org//204143002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34117 260f80e4-7a28-3924-810f-c04153c831b5