add recovery password functionality + small changes