Added ArgumentFactory.
Added tests for argument factory.
Added test for argument factory.