FEmbeddedKeepAwake

RAII for keep awake functionality This may seem a bit over engineered, but it needs to have move semantics so that any aggregate that includes it doesn't lose move semantics.