How to hide media uploads by other users in the Media menu?

Simply put – how might I completely hide media files uploaded by any other users other then themselves? Id like to disable access to these links & files since they are a way for non-admin users to be able to access and edit a custom post type that is normally not visible to them otherwise in the backend of wordpress.

Assign a Custom Role to a Custom Post?

I been looking around for this, but couldn’t find a way.
The scenario is:
I have a custom post type ‘Company’, and I’m creating Company type posts through my plugin’s code. When I create a new Company post, I set the author as Admin. Now further down the code, I’m creating a custom role ‘Representative’ and assigning users to this role through my code again. What I want to do is, assign a Representative to a Company Post as an author. But I can’t even see this user(Rep.) in the dropdown for switching authors. Is there any argument that I need to pass to wp_insert_user or register_post_type or add_role/add_cap for achieving this?