Use hostmacher to replace matchlist. And we introduce a better DialContext to do a full host/IP check, otherwise the attackers can still bypass the allow/block list by a 302 redirection.
* Move user functions into user.go * Fix test
* Move migrtions into services and base into modules/migration * Fix imports * Fix lint