Extended World API

Adds a lot of methods to the world and chunks as discussed here: https://github.com/SpongePowered/SpongeAPI/issues/256

**Small Overview:**
- `Server`
  - `createOrLoadWorld(...)`
- `Events`
  - `ChunkPreGenerate/Populate/DecorateEvent`
  - `ChunkPostGenerate/Populate/DecorateEvent`
- `StorageContainer`
- `World`
  - `getStorage()`
  - `getExistingRegions()`
  - `getExistingChunks(...)`
  - `getChunkData(...)`
  - `deleteChunk(...)`
- `Region`
  - `getStorage()`
  - `getExistingChunks(...)`
- `Chunk`
  - `getWorld()`
  - `getChunkData()`
- `ChunkData`
  - `get...Position(...)`
  - `getChunkState()`
- `ChunkState`
  - `NOTAVAILABLE`, `GENERATED`, `POPULATED`, `DECORATED`, `LOADED`
- `ChunkGenerator/Populator/Decorator`

RFC
I added that in case that custom world implementations do require a specific decorator that cannot be changed.
Or enable the plugin to lock the generator/decorator
I'm not fully familiar with the world generation process steps and requirements.