Bastion: Making System resource more robust to include a persistent collection.

The logic on fetching the list of items, and deciding whether to replace
or append to the list has been moved into the resource factory. This includes
the logic for fetching a single item and replacing the item in the list with the
potential more verbose single item fetched from the server. This allows two-way
data binding between an item fetched for detailed view and the item in the left
hand list.