I'm a bit of an extremist in this regard so my setup might not suit everyone but it's not that hard to set it all up. For example, I use Tasker to enable flight mode, turn Location services on and off etc. (See here) That might be too much for some people.
But, mostly, I use a custom kernel...