More work on service serialization. Should be stable.