Support alternative mapping formats

This PR provides support for yaml mapping description (in addition to annotations).
Implementing XML support should be an easy task.