you want to completely reload the capabilities for the current user. Basically it will deal nicely with the default site-wide permissions depending on the current user. More background in the comments on MDL-6963 Merged from stable
Still polishing the GUI side of things now.