merged with devise branch for up to date code
fuck