Remove function option from layer
Add layer::marshal
Implement layer.unmarshal
Add marshal unit test
Fix layer marshalling
Move layer_proj to layer tests
Implement region::marshal
Implement region::unmarshal
Implement test for region::marshal