Update FNV hash to FNV1a and add some optimisation

Signed-off-by: Rick Taylor <rick@tropicalstormsoftware.com>