Implementation of `hash` drops bits (#1334)

Made hash into a long everywhere except where it is returned from hashCode(), this way internally we
stay in Ceylon land until we return it from hashCode for Java interop. This means that hash fields
are not stored as longs and hash initialiser parameters are also now longs, which I think is more
logical.
Updated tests .src for #1334: hash drops bits
Updated test .src for LicenseAnnotation url->description change
Updated test .src for List.contains change