When generating API stubs with the scaffold utility using, e.g., `python -m localstack.aws.scaffold sns`,
the scaffold creates method names from operation names, which are ugly when acronyms (subsequent uppercase characters that belong together).

Example:
`CreateSMSSandboxPhoneNumber` -> `create_s_m_s_sandbox_phone_number`

it would be nicer to have `create_sms_sandbox_phone_number`

This is a limitation of this method: https://github.com/localstack/localstack/blob/1888e66b85d7e6a8ee457bc7a732984fcf7aa830/localstack/utils/common.py#L978-L979
def test_first_char_to_lower(self):
        env = common.first_char_to_lower("Foobar")
        self.assertEqual("foobar", env)
    def test_truncate(self):
        env = common.truncate("foobar", 3)
        self.assertEqual("foo...", env)
    def test_isoformat_milliseconds(self):
        env = common.isoformat_milliseconds(datetime(2010, 3, 20, 7, 24, 00, 0))
        self.assertEqual("2010-03-20T07:24:00.000", env)
    def test_base64_to_hex(self):
        env = common.base64_to_hex("Zm9vIGJhcg ==")
        self.assertEqual(b"666f6f20626172", env)
    def test_now(self):
        env = common.now()
        test = time.time()
        self.assertAlmostEqual(test, env, delta=1)
    def test_now_utc(self):
        env = common.now_utc()
        test = datetime.now(pytz.UTC).timestamp()
        self.assertAlmostEqual(test, env, delta=1)
    def test_is_number(self):