Features

I added some features. Should of made separate branches instead of one. Worst case we can just create a patch and cherry-pick commits.

What's new
1 -Added new setting to allow the canvas origin to be top-left instead of bottom-left.
2 - Added argument to the callback of chesterGL.loadAsset(); (Code breaker!)
e.g.

```javascript
chesterGL.loadAsset("texture", texturePath, null, function(err, texture) {
	if(err) {
		console.log("Oh no... error loading a texture.");
	}
});
```
3 - Made loadAsset 3rd argument (name) optional so you can place the callback there.
e.g.

```javascript
chesterGL.loadAsset("texture", texturePath, onAssetCallback);
```
4 -  Made all setters on chesterGL.Block return itself to create 'chaining methods'
e.g.

```javascript
this.head = new chesterGL.Block().setTexture("./cdn/head.png").setPosition(this.position[0], this.position[1] - 21, 0);
```