init now takes number of hash functions
eq and ne methods now test for number of hash functions
added basic implementation (element-wise) for add and contains methods
implemented copy and deepcopy
repr now returns all underlying information about BF
fixed formatting bug in eq/ne methods
fixed bugs in repr - now correctly prints size, #hashes, fp, and bitset
added testing for eq/ne, now tests for size, added size member, temporarily destroyed add function
re-implmented add method - now accepts objects of any type
updated docstring of add function, and included doctests
implemented contains, and updated docstring/added doctests
implemented union, and added doctests
added mightContain method (alternative wrapper for __contains__)
added doctests for getVectorSize
added doctests for getLoadFactor
fixed bug in __deepcopy__, added doctests for __deepcopy__ and __copy__
union now uses the maximum bit vector size of self and other in the returned filter - docstring updated accordingly
implemented expectedFp, including doctest. Had to add num_inserts field in order to do so
removed defaults in __init__, improved documentation of __init__, and renamed expected_fp to use snake case
added static optimal_hash_count function