ISIS-220: Changing method signature, adding extra optional parameters to contructor)
ISIS-220: Implemented optional extra parameters
ISIS-220: Implemented optional extra parameters in all locations
ISIS-220: Updated comments