Autodiscover

![db-autodiscovery - no adapter](https://cloud.githubusercontent.com/assets/5320213/3061409/9e784fd0-e206-11e3-848c-004f016b9808.png)
![db-autodiscovery - result](https://cloud.githubusercontent.com/assets/5320213/3061410/a14f24fe-e206-11e3-9809-fb8cea788c78.png)

If you make this public, you could unit test by mocking the `Metadata` class, which might simplify the testing strategy.