New features and functionality

Hey there, I found your library very useful, but I found myself needing a few more additional features. Please let me know what you think.

1. Prevented adding a menu twice which results in gtk getting confused
2. Added functions for changing the icon
3. Added more customizable menu capabilities. Use can supply a list as input to ```add_menu```. ```add_menu``` is still backwards compatible with dict inputs as well. Fixes #7