Merge feature SOL-20

This is a pull request to merge the SOL-20 feature (https://openedx.atlassian.net/browse/SOL-20).
We can certainly do them too - but didn't know if @frrrances _wanted_ to given that this code / style originated from her commit.