Added support for variable references in has_one to support operations where a data hash can return several different models