Feature/recursive provider

Added a recursive provider with almost all the DNS types supported. and no tests :(
Also took the gist from https://gist.github.com/codenamegary/88d86fc01b048f539601