Refactor ominpresent classes

This pull request removes the comparison against "lang." package inside class loading and hardcodes omnipresent classes inside the bootstrapping process instead.

This way, writing `new String("...")` will always work and not depend on whether code that has loaded the `lang.types.String` class has run before.

The list of omnipresent classes is:

### The instanceofs
Includes `lang.Generic` and `lang.Object`

### Types
`lang.Type`, `lang.XPClass` and `lang.ClassLoader`

### Exception handling
`lang.Throwable`, `lang.XPException` and `lang.Error`.

### Wrapper types
`lang.types.String`, `lang.types.Bytes`, `lang.types.Integer`, `lang.types.Double`, `lang.types.Boolean`, `lang.types.ArrayList` and `lang.types.ArrayMap`

### Reflection
`lang.reflect.Method`, `lang.reflect.Constructor` and `lang.reflect.Field`