Added compose method along with static representations
of empty and identity functions
Modified implementation of argNames as to not
suffer ill effects from inline comments