English is hard.
Use the same caching dictionary for all the functions (otherwise duplicates will be created)
Use (flat_compound_id, stereo_compound_id) as unique id for every drug.
Add unique constraint for Drug
Add umls_concept_id for side effects.
Generalize the caching code to 1 function (cache_or_create, which behaves alot like
get_or_create from django).