[eluser]Pascal Kriete[/eluser]
It's most commonly used for actions that you need more than once, so that you don't have any duplicate code in various controllers.
CI already has most of the libraries a normal application requires, but for more complex situtations you'll find yourself in need of some extra functionality. Take a look through the ignited code section, a lot of the stuff that gets posted there are libraries.
Hope that answered your question.