Initial code specified in the assignment.
Added ability to control table size.