[FEATURE] Add style options for legend layer/groups, and live refresh of all legend style options

- Based of off work from Stefan Ziegler (pull request #331)
- Options inherited by embedded groups (which are still always italic)
- Original layer name now saved to project file (instead of adjusted display name)
- Fix bug where setting capitalization, then saving/reopening would permanently set capitalization
- [API] Add originalName() to QgsMapLayer to access original (pre-adjusted name)
- [API] Add setupFont() method to legend group items
- [API] Add updateLegendItemStyles() and updateLegendItemSymbologies() to QgsLegend to allow style option changes to become active without app restart