Began tracking bloom filter project with git.
File bloomfilterkata.txt contains the program sketch which guided the
creation of the project.

Complete classes: RandomLineAccess.
Functions implemented: countWordsInDictionary, testValidEntries,
testInvalidEntries, main.
Skeleton classes: BloomFilter, HashMonster.
Skeleton functions: mutateString, testRandomPermutations.
Unclassified: typedef hash.

Todo:
Need implemented hash functions for Bloom Filter.
Need working method to convert hash-to-bitarray.
Needs Recommenting.
Brushed up the documentation (all over).
Added two hash functions from internet sources.
Revised typedef hash, and created global MAX_HASH using <limits>.
Implemented BloomFilter::load and query functionality.
RandomLineAccess now throws an exception if its file can't be opened.
Created functions randomChar and randomWord.
Implemented mutateString.
Accordingly changed testRandomPermutations and testInvalidEntries which
use randomChar, randomWord, and mutateString.
Moved some main() functionality into new train() and test() functions
to improve program readability.
Began seeding using system time.

Todo:
Needs prettier output.
Needs the ability to check words versus the training dictionary.
Program makes user aware that they really,
really need a training dictionary.

Added bloom.cpp comment header.
Changed countWordsInDictionary to countKeysAndVerifyDictionaryBigEnough
to keep main() function clean and readable while giving the program
helpful error messages when run without appropriate dictionary.
Converted erroneous syntax const char* dictionary_file to
DICTIONARY_FILE.
Added a lot of text to the bloom.h comment header.
Commented methods at class declaration.
Added query ability to RandomLineAccess object.
Tests now are passed an open RandomLineAccess object by
reference to make use of this functionality.
FUTURE DIRECTIONS documentation added.
A file of sample output was added to the repo.
Project is minimally complete.

Changed mutateString to produce fewer results accidentally in the
training dictionary. This was tested using RandomLineAccess->query.
Added to bloom.h comment header documentation.
Ported to Windows. testValidEntries failed, so after debugging, it was
determined that the cause was the Visual Studio compiler's handling of
non-Windows-native new lines.

Added download link to training dictionary containing Windows newlines.
Added COMPILATION NOTES and KNOWN BUGS to bloom.h comment header.
Changed #include<tr1/functional> to #<functional> (breaks G++
compilability).
Added .gitignore.