Tooling API

Some preliminary tests for supporting the tooling api.