fixes #140
fixes #139
additional fixes for #140. ensure the 'set' function behaves correctly based on the different number of params it can receive.