Clean up CONFIG_SMP ifdefs

Avoid having CONFIG_SMP ifdefs littered throughout the code by moving them
into headers and providing empty/simplified inline functions there for
!CONFIG_SMP.

Signed-off-by: Alex Smith <alex@alex-smith.me.uk>