sched: massive update...

Changelog:
1. sched: Remove get_online_cpus() usage
2. sched: Make scheduler aware of cpu frequency state
3. sched: window-based load stats for tasks
4. scheduler: compute time-average nr_running per run-queue
5. sched: Implement smarter wake-affine logic
6. sched: Micro-optimize the smart wake-affine logic
7. sched: Fix select_idle_sibling() bouncing cow syndrome
8. scheduler: Re-compute time-average nr_running on read
9. sched: add wait_for_completion_io[_timeout]
10.  SCHEDULER: Autogroup patch group by current user android UID instead of task ID
11. sched: Use cached value of span instead of calling sched_domain_span()
12.  sched: Remove unused params of build_sched_domain()
13. sched: Optimize build_sched_domains() for saving first SD node for a cpu
14. sched: don't call get_group() for covered cpus
16. sched: reduce calculation effort in fix_small_imbalance
17. sched: scale the busy and this queue's per-task load before compare
18. sched: scale cpu load for judgment of group imbalance
19. sched: Reduce overestimating rq->avg_idle
20. sched: Consider max cost of idle balance per sched domain
21. sched: Periodically decay max cost of idle balance
22. sched: change load balance number to h_nr_running of run queue
23. sched: change cpu_avg_load_per_task using h_nr_running
24. sched: change active_load_balance_cpu_stop to use h_nr_running
25. sched: change pick_next_task_fair to h_nr_running
26. sched: change update_sg_lb_stats to h_nr_running
27. sched: change find_busiest_queue to h_nr_running
28. sched/rt: Remove redundant nr_cpus_allowed test
29. sched: remove redundant update_runtime notifier
30. sched/fair: Optimize find_busiest_queue()
31. sched/fair: Optimize cgroup pick_next_task_fair()