spec: fix occasional failure when selinimum capture is enabled
spec: fix occasional failure when selinimum capture is enabled

fixes SD-2006

mixing `singleton_class.prepend` and `extend` appears to cause `super`
to misbehave every once in a while (~1/250 workers in ~20% of builds)
... perhaps a ruby 2.3.1 bug?

just use `singleton_class.prepend` like autoextend does. 30+ test builds
with this tweak, and zero failures :yuss:

also change a couple `include` calls to `prepend`

test plan:
n/a, specs

Change-Id: I35629d63ed3855d95ae427c1cd992d12b950880c
Reviewed-on: https://gerrit.instructure.com/99613
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <c4fe2b1d90ef8f2548c8aeabfa633434316f0305@instructure.com>
Product-Review: Jon Jensen <44f878afe53efc66b76772bd845eb65944ed8232@instructure.com>
QA-Review: Jon Jensen <44f878afe53efc66b76772bd845eb65944ed8232@instructure.com>

instructure/canvas-lms,venturehive/canvas-lms,grahamb/canvas-lms,djbender/canvas-lms,sfu/canvas-lms,SwinburneOnline/canvas-lms,grahamb/canvas-lms,SwinburneOnline/canvas-lms,sfu/canvas-lms,sfu/canvas-lms,venturehive/canvas-lms,venturehive/canvas-lms,instructure/canvas-lms,matematikk-mooc/canvas-lms,matematikk-mooc/canvas-lms,instructure/canvas-lms,venturehive/canvas-lms,instructure/canvas-lms,djbender/canvas-lms,instructure/canvas-lms,SwinburneOnline/canvas-lms,djbender/canvas-lms,SwinburneOnline/canvas-lms,grahamb/canvas-lms,grahamb/canvas-lms,sfu/canvas-lms,instructure/canvas-lms,matematikk-mooc/canvas-lms,grahamb/canvas-lms,sfu/canvas-lms,instructure/canvas-lms,sfu/canvas-lms,matematikk-mooc/canvas-lms,djbender/canvas-lms,sfu/canvas-lms