rewriting MediaList and UserList as singletons and using static members