This sets the Automatic-Module-Name for moshi, moshi-adapters, and moshi-kotlin.
It moves moshi-adapters into its own .adapters package and forwards the existing
adapter. It moves the moshi-kotlin into its own .kotlin package and forwards the
existing adapter.
I'm not certain this is necessary or sufficient, but I think it's the right idea
for JPMS compatibility.
This makes it possible to have synthetic properties that have no
state.
Also test properties that are synthetic and have no backing field.
Closes: https://github.com/square/moshi/issues/299
* Add kotlin-module with support for Kotlin data classes
* Naming and style changes to KotlinJsonAdapter.
Biggest changes:
* Attempt to support regular classes and data classes
* Avoid parameter hashing when indexing is sufficient for
constructor parameters