[eluser]jedd[/eluser]
Hi Diego, and welcome to the Ci forums.
Now .. a user auth app .. if you were creating one from scratch, for use in your own project (as in - a project that used the user auth app, but wasn't *just a* user auth app) then it'd be easy - you'd have a model that spoke to your user, permissions, groups, (etc) database tables, and you'd have at least one controller that interfaced between the user(s) and that model.
But .. if you want to do a 'shippable module' - well, that's a bit more complex.
I reckon you'd want to look at HMVC (?) - in the forums and in the wiki- this is a way of bundling models, controllers and views as separate packages, rather than spreading each of those related files through the primary CI application structure.
I'd also suggest you check out an existing user auth app - there's quite a few out there, but DX Auth is one of the more respected (and very complete) ones. This will give you some pointers.