Feature/readonly columns

Apply interface change to make column definitions read only. This makes sense on the one hand to protect unintended changes to record values but also to retain key attributes which are later needed to reference back to the original (remote) data source. 

One example would be a database connection which loads data into an `IFeatureCoverage`, making changes and store them back to the database tables. For updating the appropriate entities the primary key values have to be retained.