Cache mesh data and code clean up

.obj files now cache as .data files, including vertex tangents (for bump
mapping). Object, light and asset initialization moved into an
environment file