Django custom registration and a login form with full features like forgot password, 404 pages, and custom sessions