[eluser]markanderson993[/eluser]
I recommend using FreakAuth, you can use it to register, login, logout, activate and change passwords for users. It also comes with a useful demo that you can break apart and bend to your will.
[eluser]Colin Williams[/eluser]
It really is quite simple. I don't think you necessarily need to use one of the contributed libraries, but the Wiki is full of them.