support for schema compatibility

This allows to read multiple files with different schemas into the same target schema.
Assuming the schemas are compatible (the same field is not defined twice with different types or incompatible repetition)
The main use case is to add fields to an existing schema and be able to read old and new files together.
@mickaellcr: this would replace the empty column implementation which won't work for nested fields.