begin implementation for aws signature version 4