Basic types

The default superclass when no superclass is explicitly specified using `extends`. For the sake of convenience, this class inherits `Identifiable` along with its default definition of value equality. Classes which aren't `Identifiable` should directly extend `Object`.

By: Gavin

- `Anything`
  - `Object`
    - `Basic` ...and other supertypes

- `Basic`
  - `Identifiable`
  - `Object`
    - `Anything`

- `Basic`
  - `AbstractAnnotation`
  - `ActualAnnotation`
  - `AliasesAnnotation`
  - `AnnotationAnnotation`
  - `Array`
  - `AuthorsAnnotation`
  - `Boolean`
    - `false`
    - `true`
  - `Comparison`
    - `equal`
    - `larger`
    - `smaller`
  - `Contextual`
  - `DefaultAnnotation`
  - `DeprecationAnnotation`
  - `DocAnnotation`
  - `FinalAnnotation`
  - `Finished`
    - `finished`
  - `FormalAnnotation`
  - `LateAnnotation`
  - `LicenseAnnotation`
  - `NativeAnnotation`
  - `OptionalImportAnnotation`
  - `SealedAnnotation`
  - `SeeAnnotation`
  - `SerializableAnnotation`
  - `SharedAnnotation`
  - `StringBuilder`
  - `SuppressWarningsAnnotation`
  - `TagsAnnotation`
  - `Throwable`
    - `AssertionError`
      - `InitializationError`
    - `Exception`
      - `DeserializationException`
      - `IncompatibleTypeException`
      - `InvocationException`
      - `MutationException`
      - `OverflowException`
      - `SerializationException`
      - `StorageException`
      - `TypeApplicationException`
  - `ThrownExceptionAnnotation`
  - `UninitializedLateValue`
    - `uninitializedLateValue`
  - `VariableAnnotation`
  - `contravariant`
  - `covariant`
  - `emptyIterator`
  - `invariant`
  - `language`
  - `modules`
  - `nothingType`
  - `nothingType`
  - `operatingSystem`
  - `process`
  - `runtime`
  - `system`

Initializer
`Basic()`

Inherited Attributes
Attributes inherited from: `Object` `hash`, `string`
Attributes inherited from: `Identifiable` `hash`

Inherited Methods
Methods inherited from: `Object` `equals()`
Methods inherited from: `Identifiable` `equals()`