implement roleid properly; use ActsAsAsset where possible