Added remaining actions to interface; updated all methods to take required parameters as parameters followed by optional parameters in a struct.