# Functions
NewDispatcher method will return a dispatcher object.
NewTaskQueue will create a new taskqueue of buffered job channel.
NewWorker method will create a worker object and return it.
# Structs
Dispatcher struct contains the necessary data to spawn the workers and start each worker, it contains a worker pool channel of fixed size ie buffered.
Task struct is just a wrapper for sync.WaitGroup.
TaskQueue should be used when you want to limit the number of tasks you want to process in background.
Worker struct holds the information regarding the worker.
# Interfaces
Job interface.