add a way to expand/collapse all methods

## Add a way to expand/collapse all methods

### Acceptance Criteria
1. Button exists to expand/collapse all methods.
2. If any one method is closed then the button will read "expand" and its function will be to expand all methods which are not currently open.
3. If ALL methods are open then the button will switch to read "collapse" and its function will be to collapse all methods.
The logic is using allExpanded instead of expanded. So we're setting the state to the opposite of the current allExpanded value rather than the opposite of itself.

This is the "expand all / collapse all" logic which will work to expand all methods unless all methods are already expanded, then it will collapse all methods. So if allExpanded is false we set every methods expanded value to true (ie, ! allExpanded).