You should use assets to represent transfers of ownership, where if person A gives it to person B, then person A no longer has it. And streams for more general data storage and retrieval. You can certainly mix both types of action in a single transaction, e.g. using the sendwithdata API (and many others).