Addressed several bugs and issues with the firewalld state
Addressed several bugs and issues with the firewalld state

Added new parameters to resolve saltstack/salt#38855 and resolve
saltstack/salt#41075:
- Added prune_ parameters similar to prune_services for each item that gets manipulated (prune_block_icmp, prune_ports, prune_port_fwd, prune_interfaces, prune_sources, and prune_rich_rules)
- Set prune_services and all new prune_ parameters to False by default
to avoid confusion with the firewalld.present function's expected
behavior
- Modified _present() to handle each of the new prune_ parameters
similarly to how prune_services is handled

Fixed saltstack/#41717:
- Removed redundant code from present() that was overwriting ret['result']. Previously, present() called another function _present() to handle the
bulk of the actual functionality. When it returned, it reloaded the
firewalld service if changes were made, updated ret, and returned it.
However, _present() already updated ret, present() was overwriting its
changes and setting ret['result'] to true regardless of what happened in
_present()
- Fixed output showing changes when test=True. Instead of listing
predicted changes in ret['changes'], ret['comment'] displays a nested
list of items that will be changed and sets ret['changes'] = {} (based
on the way pkg.py handles its output

Additionally added TODO comment to update documentation block

saltstack/salt,saltstack/salt,saltstack/salt,saltstack/salt,saltstack/salt