s4 dns: Split up the code into multiple files for easier development