Revamp light falloff calculation in Encoder

* Remove Linear, Quadratic and Constant calculation from Light class
* Perform exact calculation of range rather than using approximation algorithm
* Remove falloffExponent as it was unused
* Default range parameter to 1.0f directly, rather than deferring until actually writing to .gpb
Add conditionals in default shaders for using medium precision

Some devices have problems with high precision floats. I have tested
Nexus 4 and Nexus 7 with Android 4.4 having lightning artifacts when
using highp floats but work fine with mediump.
Fixed Sample browser build on Android
Merge pull request #1364 from rgngl/sampleAndroidFix

Fixed Sample browser build on Android
Merge pull request #1362 from rgngl/mediumpShaders

Add conditionals in default shaders for using medium precision
Merge pull request #1361 from staticfloat/encoderfix

Revamp light falloff calculation in Encoder
Fixed luagen build on OS X
Merge pull request #1367 from rgngl/luagenOSXfix

Fixed luagen build on OS X