Refactor hosts into a submodule in entities

There're so many hosts types, for clarity it's better to refactor them
into one submodule