 
 /// Data structure that wraps an array of items to represent a tableView/collectionView section.
 public struct Section {
-    /// The header data for this section
+    /// Title text for this section
+    public var title: String?
+
+    /// The header reusable for this section
     public var header: Reusable?
-
+    
     /// The item data for this section
     public var items: [Item]
 


/// Object that can act as the delegate and datasource for UITableViews and UICollectionViews.
/// The block based initialization allows tables and collections to be created with a DSL-like syntax.
public class DataSource: NSObject {
    public var sections: [Section]
    public var onReorder: ReorderBlock?
    public var onScroll: ScrollBlock?
    public var middleware: [Middleware]

    /**
     Initialize a DataSource


extension DataSource: UIScrollViewDelegate {
    public func scrollViewDidScroll(_ scrollView: UIScrollView) {
        if let onScroll = options.onScroll {
            onScroll(scrollView)
        }
    }
