Rendering:
* Secondary rays
* Shadows

Post-processing:
* Chromatic aberration
* Lens dirt

Scripting:
* Eliminate functions that are not called / prevent them from causing
	type errors
* Spill values in the FPU stack runs out
* More checks in the execution engine
* Re-execute init if shaders are changed
	(better yet, only execute the parts that are actually needed)
* Overrides
	* Check for overrides on the same inputs when setting things up
* Aliases
* Display errors in UI
* Optimizers:
	* Constant folding
	* Detect variables that are actually constants
	* Dead code elimination
	* Sampler re-use
	* (Output only) Support for fixed size
	* (Output only) Texture / framebuffer re-use

Sync / inputs:
* Widget for displaying single inputs
* Widget for displaying overrides
* Structure for undoing actions
	* Curve file external updates
	* Segment creation
	* Segment deletion
	* Segment type change
	* Value changes
	* Duration changes
	* Point insertion
	* Compaction
* Local changes vs file update
* Editing single values
	* Resizing segments
	* Resizing segment sections
	* Changing segment types
	* "Moving" points (duration / value changes)
	* Compacting curve data
		-> merge segments
		-> remove points that serve no purpose
* Saving data

Misc:
* General overhaul (e.g. use tabs)
* Color grading controls:
	* White balance control in components tab
	* Don't reset when hitting value or saturation 0
* Camera
	* Control for up vector - check if something more appropriate exists?
	* Vector controls are too sensitive