added bcrypt, better errors