I think sorcher had it right. No solution will be of use unless you understand how it works and can modify it to suit your purposes. You need to understand how to interact with sessions/data stores. If you understand this, you could probably do worse than build one yourself. By all means look at loads of different examples to see the different approaches and extract the best bits from them. What suits you may not suit somebody else. Indeed a solution for your current site may not be suitable for your next project. Common modern features:
1) sign up / login
2) remember me
3) forgot details
Sometimes a basic profile form is included in the sign up procedure and/or a captcha to ensure that you're a human. Also some systems insist that you can't login until you activate the account via url sent to an email account. You may even consider a gravatar system for profile avatars.