Split custom field service into two layers.
Merged