Fix AbstractI2b2Metadata::getConceptKey()

The table table was erroneously being used as the table code.
Fix ConceptsController::getChildren()
Refactor/bring in line with -api I2b2 & its parent

Add getMetadata() and move stuff from I2b2 to AbstractI2b2Metadata
Add Birn domain class (i2b2 metadata)
Performance improv: cache table code immediately
JavaScript forntend needs to know more about terms

Unfortunately, it needs to know too much. See the comment on
OntologyTermMarshaller.
Add QuerySpecifyingType::getProcessedDimensionCode

Right now, it's not actually needed.