CANVAS-265, completed a compromise design that will suffice if we don't have time to revisit this until the next sprint. Adds to, does not replace the previous commit.
Merge pull request #1783 from elicochran/CANVAS-265

CANVAS-265, completed a compromise design