Fixes#3199 (completely, and other bugs of the sort)
The current way ClientUI switches tabs on the side panel is by adding
and removing them from a container panel. This is slow on panels with a
large number of components.
To fix this, I decided to use a cardlayout, as suggested by abex.
So now, the container panel has a CardLayout and all the plugin panels
are added with their names as keys, and when a NavigationButton is
clicked, the cardlayout will show a panel based on its key. (Ex: Xp
Tracker).