displayProperty can be a function

displayProperty can be defined as a function now, instead of a string.

The reason for this is that there are occasions where you want to process the result some extra before displaying it.

The full item is passed into the function, so you can do whatever you want to the result.

```javascript
columnDefinition = [{
   columnHeaderDisplayName: 'Time now',
   displayProperty: function(item) {
       return new Date().getTime();
   }
}]
```

Another reason as why to add function, is to deal if there are property that are sometimes present, sometimes not.

```javascript
columnDefinition = [{
    columnHeaderDisplayName: 'Name',
    displayProperty: function(item) {
        try {
            return item.user.name;
        } catch (err) {}
        return "Unknown";
    }
}]
```

Unless there is another way to deal with this, it would be good if it can be merged into the code