Hi Jeff,
A couple things. First, swaggerhub facilitates a standard usage of references. So you don't need to use swaggerhub to use references, it just makes it easy to, and by a concept of Domains.
Next, references are widely supported across most all of the popular tools. Things start getting more complicated (for all involved) when they are relative. For example, try putting this into your definition:
Note that reference lives in swaggerhub but swagger editor and even your own api definition will find it just fine. As you probably notice though, this is an absolute reference.
For other tooling, such as swagger-ui, swagger parser, etc., relative references behave fine, but note the term `relative` means they need to be `relative to something`. The swagger-editor--which allows you to edit a definition without the notion of being "hosted", makes this impossible.
It will resolve fine.
If you are trying to resolve a domain inside your api definition, it will auto-complete if it under the same "ownership". That is, if it's under your account or organization (fehguy in my case), you can press "option + space" on a mac or "ctrl + space" directly after typing "$ref:".
Let me know if that answers your question