Misc bugfixes and increased test coverage.

Some usages which would segfault now just raise NotImplementedError.
Fixes #44

Fixed bug in the BloomFilter.copy method.  Fixes #43

The constant, ReadFile is now available in Python as
pybloomfilter.BloomFilter.ReadFile

bf_from_base64 and bf_from_file were replaced with BloomFilter class
methods, from_base64 and open, respectively.
Add MurmurHash3 (unused) and misc cleanup

Added the ability to use the MurmurHash3 algorithm (but you'd have to
change some comments around to actually enable it).

Removed some duplicated lines in src/bloomfilter.h (were already
imported from src/mmapbitarray.h).

Fixed up schizophrenic type returned by _filesize(int fd).  It was
trying to return an int (-1 indicating error) and getting stored in a
uint64_t which obviously cannot even represent a -1.  So now the value
0xffffffffffffffff is used to indicate failure.

Rebuilt pybloomfilter.c with Cython 0.17.
Remove a dead-code line.
Creating branch for SwiftStack release 0.3.11.3
Whoops, forgot to build a fresh pybloomfilter.c
Fix a couple more bugs

Fixed permissions plumbing for BloomFilter.from_base64

Fixed BloomFilter.__cinit__ to raise an OSError when a file can't be
created.
Remove Makefile deletion of src/pybloomfilter.c

...because setup.py already removes it if Cython is going to rebuild it,
and if that's not the case, it definitely shouldn't be deleted.  This
was breaking our Ubuntu packaging.
Support Debian/Ubuntu package building in Makefile
Fix in-memory BloomFilter accuracy.

...by initializing the bit-vector to all zeroes.  fixes #46

Also round-down the hash count (with rationale included in a comment).

The code was doubling the number of bits in the filter, but accuracy is
reliably within 2x of target (per the updated tests) even without this.
So I took that out.  BloomFilter will now use less space and the number
of bits should match what you'd get if you took all the Wikipedia
article's equations and calculated it yourself.

Removed num_slices, which I belatedly realized was for comparison
against pybloom.  I just fixed tests/comparisons/accuracytest.py to not
need a num_slices property on the bloom filter object.

Beefed up the accuracy test.  It now checks both malloc and mmap
BloomFilters for strings and integers.  It also has non-asserting tests
which print error rate as a function of elements inserted (purely for
humans looking at test results).

Made the simple tests prove all BloomFilter properties are preserved
with file copying, and loading from base64.
Merge pull request #45 from swiftstack/misc-bugfixes

Misc bugfixes and increased test coverage.