added password generator functionality