Update hashing algorithm and rework basically everything