Minor: The encode method does not handle empty data arrays explicitly. While the current tests do not cover this, it should be ensured that encoding with an empty data array results in a valid Bech32 string with only the HRP and separator.
Originally posted by @latheesan-k in #1 (comment)