this looks good, was just thinking why we couldn't do the same kind of preloading for terms to avoid an additional request - I suppose select2 could use a preloaded json array rather than ajax?