Only allow parameters to be optional

Default values should be the responsibility of the implementation
Fixed #98 again