Schemes: Add IsAffineSchemeRep representation for objects created by Spec.
Declare IsConstructibleSubsetOfAffineSpace property.
Add some obvious logical implications for schemes.
Set IsConstructibleSubsetOfAffineSpace and IsAffineSubscheme in Spec( ).

Also adjust the condition in the ViewObj to use IsConstructibleSubsetOfAffineSpace
instead of IsAffine to decide whether our object is a subobject of affine n-space.
Don't fail in ViewObj if an object has IsAffineSpace, but has no StructureSheaf set.
Declare ComplementAttr as an attribute.

We would like to declare Complement as an attribute,
but the CRISP package uses it as an operation.
Merge pull request #3 from brain0/working

Changes to Sheaves needed by AlgebraicThomas