How can a user choose items from a view?
Use flags module along with the default view it provides. 


  Flags may be per-user, meaning that each user can mark an item
  individually,


You can create two flags one called Marked and an other one called Delivered. Reader should be able to flag a Book as Marked but only Site Admin should be able to mark a Book as delivered.

If you are looking for more control consider using Workflow and then defining the states Marked and Delivered. You can set the access levels accordingly for the status change.