initial
refactor v1
refactor v2
refactor v3
refactor v4
name servers working
refactor v5
work in progress (not working yet)