Add option for custom serializer to `Model#serialize`

I want to switch serializer on special context.

For example:
* admin can create `Post` with original `Category`.
(This case `Post` will be serialized embedded `Category` **records**.)

* user can only create `Post` with chosen `Category`.
(This case `Post` will be serialized embedded `Category` **ids**.)