Refactor 11 14

This refactor brings regex queries, collection by name and tests that actually test things.
@sh3nan1gans do you mean because all the other callbacks have the signature of `function (err, data) {}`? I agree that this should pack the error into the data object or something. What were you thinking?