Fix bug preventing minions from unloading custom modules.

DO NOT BLINDLY MERGE.

@thatch45 Please review. I think this should resolve the issue but it does change how the loader operates to a certain extent so I'd like you to take a peek and make sure I'm not causing regressions here.

This change no longer blindly updates the __salt__ dict for each module upon module refresh but instead rebuilds the dictionary from scratch. Refs #7691.