gui: Add icon caching

Signed-off-by: Michael Buesch <m@bues.ch>