Added comments.  Better organizing the class by using extension to implement datasource/delegate.