pub fn caller<T>() -> T::AccountId where T: Environment,
Returns the address of the caller of the executed contract.
If the returned caller cannot be properly decoded.