Added rehashing (see description)

Added rehashing functionality, as well as structs for table slots.
This is a branch off the main project.