Updated and added various features

Changed buildConfig to also check for correct wake type and also
removed memset of struct.

removed “if NULL” for callback, always defaults to “defaultCallback”
anyway

Moved “lowLeakageSource” to atomic block
added new feature idle and other updates

Changed struct so 32bit variables are first then 16bit then 8bit

“sleepHandle “ function is now inlined to speed up things

low power delay now inlined.
moved pinMode to top of setup
made "idle" -> "Idle"
added Idle keyword
added asm to make sure compiler does not reorder instruction before and after calling "wfi"
Added sleep instruction during delay to reduce power
added sleep to function and updated algorithm to for asm