Tray func initial commit

Initial import of tray functionality(still needs a lot of work)