-Each node is identified by a hash generated by its string path
-each hash then maps to a struct that stores swap 'Node' pointer to comparison function, filter info
Notes:
Go strings typically encoded in UTF-8. String is immutable array of bytes.
ranging over a string with a for loop returns runes.