I'd tend to say that only tabs/helper:getTabForRawTab should call Tab constructor.
Or make Tab() constructor to behave like a singleton so that we won't need getTabForRawTab anymore.