Refactor variable field look-up methods to use ActiveRecord associations; add subfield model