Modified HashSet and HashMap to use the F# Set and Map types to handle collisions instead of the list-based sets/maps we were using.