removing storage name from Metadata as first class citizen, replacing it with annotations (merged with emils changes)

Merged with Emil's changes and incorporated previous CR feedback

@anpete @emilcicos 
Don't we have a ColumnName() extension method that we can use here instead of Where(...)?