Port the core probability tables and BloomFilter constructor from nim-sds to TypeScript.
- Port the probability lookup tables from
nim-sds as typed arrays
- Implement
getMOverNBitsForK() helper function to determine optimal bits/element
- Create
BloomFilter class with constructor that:
- Takes capacity and error rate parameters
- Supports optional k-hash override
- Supports optional bits-per-element override
- Calculates optimal parameters when not specified
- Initializes backing bit array storage