Refactored the panel plugin
A proof of concept of plugin refactoring. I gave up on trying to make both systray icon and panel plugin work together, both versions want different object hierarchies, and trying to combine them produces a difficult to maintain code (different top-level components, excessive coupling, lots of ifdefs). I have removed the systray completely for now. If it is still needed, I think a better solution would be to fork power-manager-button.c, remove panel plugin related code from it and keep it separate from the panel plugin (I can do it but maybe it is the time to retire the systray icon anyway).
The panel plugin works and I have fixed some layout issues (plugin size increasing to full size of the panel when changing the panel size). I did not change the design/logic in the button. It would be nice to have a "presentation" icon fit in the button layout. Also, I have tested the plugin on a desktop PC, so there may be issues with battery status features.