fixed validation, model, changed login to use non-static class instead of static format