add auth module, refractor users table (need reset), add login function in auth, add new error codes, change base error code to 500 (if err_code not exists) by clain atomi