Fixed various small bugs.
Got all set tests to pass.
Fixed contract error message generation in define-generics.
Fixed a bug with weak sets.
Added tests for weak and custom sets.