android checkpoint

currently have basic ndk setup but no way of invoking java function
android support

A few major changes:

1) The android/ directory contains a scaffold of a standard android
project (but without all of the IDE crap) and a special test c++ source
file in the jni folder. It is configured to build for arm, x86, and
mips.

2) There is a new android.sh script which does an android build.

3) There is a new class called GuidGenerator which must be instantiated
before creating a guid. This was done specifically to accomodate android
without using any hacky design patterns. Since the android
implementation needs a reference to a JNIEnv * to create a guid, there
must be some parameters passed to the generator. Therefore, creation of
the generator can be platform specific, but the actual call to newGuid()
is still platform independent. To prove that it is portable, test.cpp is
now a simple library with a test() function and there are two different
ways that it gets called. One is via testmain.cpp which is used by
everything except android. The other is jnitest.cpp which is used by
android and makes a different generator, and uses a different output
stream so that the results can be rendered in an android GUI instead of
just on the console.