move resolver and ping functionality into submodules