closes #5: Provide an easier way for providers to access arguments.
Adding some failing tests for type
add support for 'type'