Improve scheduling, support sub-module sharding and module prerequisites.

Bug: 21762834
Change-Id: If2c5500f03a4708f751a25046ba20a6bbe6f7bf8
10 files changed