Adds the android-ndk-profiler library
Adds hooks for android-ndk-profiler

Save the state to get profiling data in /sdcard/gmon.out. Use adb
pull to grab that file, then run gprof (the binary in the NDK) to
get a human-readable format.
Inlines getIndex and getColorIndex
Adds missing files to android-ndk-profiler
Adds special loops pointer arth optimizations
Gets a ~5x speedup by making static variables local
Moves clear into the app-android function
Sets compiler level to O3
Breaks out some kinetics and drawing functions
quick optimization in collide.c
Moves specials out into it's own function
Fixes unmovable velocity issues
half done with switch to arrays
Updates points, collide, and saveload
Finishes converting to arrays

There's still segfaulting issues to be resolved.
Fixes counter/tempParticle mixup in update.c, change a_heat back to char array instead of short
Fixes c/d issue with heat in saveload
Optimizes specials slightly
Adds timing to rendergl.c
Moves the physics updates to a synchronized thread

After some analysis, it looks like the texture upload to the GPU
was blocking the CPU without utilizing it for about 10ms. This
significantly reduced FPS. To improve this, we now have a separate
update thread, which is synchronized with the render thread, but
which can continue to update while this texture upload is occuring.