Changed completely table definition; added the concept of ColumnsDefinition that owns columns and provide a Key to check rows identity