added compose() function method and added functionality to the __args() method