refactored modes for environment and returned live shader coding to working order
merge