Making the listview tvs more robuts, added interfaces for cross communication between components and making UI a bit cleaner