basic implementation of main features: - custom data sources - column types - sorting by columns - click events