tql Taxonomic Query Language - a grammar and parser for expressing taxonomic hypotheses and questions