Enhance roster to be able to hold non-persistent roster items
By default, Roster will try to persist roster items to the database. Add a way to specify specify which roster items are persistent or not. Roster items that are not persistent could be used as a way to implement dynamic roster items (roster items that are added on the fly and only in memory). This feature combined with is all we need to let modules/plugins/components handle dynamic roster items.