Add a core API / split out mmodule/libart

Contains:
1) Adds a core API surface for use by framework.jar, etc.
(which is distinct from the intra-core API surface for
internal "core" use).
2) Move rules related to intra-core dependencies
into mmodules/Android.bp
3) Add mmodules/libart. To be joined later by mmodules/oj

Various renames and tidy ups are included to reduce duplication and
make things clearer now there are two APIs: core.intra
and core.api. Also removes some usages of the term mmodule because
at least two people don't like it.

Bug: 113148576
Test: build / boot
Test: CTS: run cts -m CtsLibcoreSimpleMModuleTestCases
Test: CTS: run cts -m CtsLibcoreCoreApiTestCases
Change-Id: Id43bf55c83ffcdcb2181a5aa203a14d7c83a764c
11 files changed