fixes #13, fixes #14 provide == method in addition to isequal