Once a data-block was turned into an asset, it should not be purged on reloading the file. Currently we achieve this by setting a fake user.
This is a problem for multiple reasons:
* Automatically setting a fake user is not something users expect to happen on "Mark Asset"
* On "Clear Asset" we can't just remove the fake user again, because we don't know if it was "Mark Asset" who set it, or if the user wants to keep the data-block around even if it otherwise has no real users (i.e. wants to keep the fake user).
* Being confused by the fake user, they may actually unset it, and still use the asset data-block that way.
Proposal is to add a new user type, "asset user". This could be implemented with a ID flag, like `LIB_FAKEUSER` or `LIB_TAG_EXTRAUSER`. But we could also simply use the existence of `ID.asset_data` as a flag and follow the fake user management of existing code. There may be problems with that in cases where we clear fake user for example (should we also remove the asset data then?), but that may be a good thing: It forces us to think how assets should be treated in such situations.