Allow tables in the UI to be sorted

This should solve #400, allowing tables in Huginn to be sorted by most columns.

Appreciate a code review!

![screen shot 2014-09-10 at 12 10 05 am](https://cloud.githubusercontent.com/assets/83835/4213866/6732bc3e-38bb-11e4-97f6-780d53eda2d7.png)

![screen shot 2014-09-10 at 12 10 17 am](https://cloud.githubusercontent.com/assets/83835/4213867/686a7128-38bb-11e4-86ed-9d6277167816.png)

What about making `name` an optional keyword argument to save an argument on `name` and `provider` lines?

```ruby
    # :call-seq:
    #   sortable_column(attribute, default_direction = 'desc', name: attribute.humanize)
    def sortable_column(attribute, default_direction = nil, options = nil)
      if options.nil? && (options = Hash.try_convert(default_direction))
        default_direction = nil
      end
      default_direction ||= 'desc'
      options ||= {}
      name = options[:name] || attribute.humanize
      # ...
```

This looks a bit ugly but when we drop ruby <2.0 it can be updated to `def sortable_column(attribute, default_direction = 'desc', name: attribute.humanize)` as the rdoc comment says.