Merge branch 'master' into develop
Merge branch 'hotfix/1.0.1' into develop
Merge branch 'hotfix/1.0.2' into develop
Merge branch 'hotfix/1.0.3' into develop
Added emerald ore.  Fixes #22.

I checked the Minecraft wiki pages on ore and saw that emerald ore is
about half as frequent as gold at the same depths.  That's enough for
me!
Added properties.  Fixed #24.

regiondir, regionfile, mapdir, and mapfile are now properties.
They will no longer show up in region YAML files.
Fixed typo in method.

Should have named it mapsdir, not mapdir.  Oops!
Moved map file back where it belongs.

The property update inadvertently placed the Map.tif file in the wrong
location.
Completed property transition.

Looks like I forgot to change tile and region.  oops!
first steps on improvement
Initial commit of test suite
minor updates
Made some changes to the test code. knn.cl works for crusts but not landcover.

buildtree.cl now has printf support (but it does not yet run)
It also uses uint idx and has more test code.

buildtree.py now includes a printtree routine for testing.

helpers.py now supports multiple platforms and devices.
Values are hardcoded to support the Intel device as #1.
Also some new values are being checked but we aren't doing anything with them yet.

invdisttree.py has a new routine "distances" to help test knn.

knn.cl now has tons of debug.  Coords are now floats, so distances are now floats too.  Many ints are now uints.  A serious bug was found:  <= lentree is bad, < lentree is good.  Another major bug: output of ids was wrong, tree[ids] was right.  knn.cl works very well for crusts, but not yet for landcover.  No Idea Why Yet!

knn.py has extra debug as well.  Bugs fixed:  yidx varies on ylen, but <= lentree above hasn't been fixed.

knnplus.cl is on the float bandwagon for coords.  Not yet fixed re: <= lentree.

testbuildtree.py now supports printtree and has a main!

testknn.py has a cleaned up slicing routine.  Not yet tested!  It has also been modified to support the changes in invdisttree.py to compare results.  And it, too, has a main.

testknnplus.py has a cleaned up slicing routine, also not yet tested, and a main.

testopencl.py has been tweaked a little.
Going back to base instead of generating array on the fly.

knnbase() runs very well with the non-splitting case.  Once I get
testknn() to work with splitting, then I'll port the results upward.

knn.cl has knn() supporting xmajor row ordering.  Not deleting in case
I figure this out.  knn() also has TONS OF DEBUG NOW, but so does
knnbase() in the same file.

testbuildtree.py lost gen_params_from_base() but it wasn't using it.

testknn.py lost unused imports and got slices added to the test
arguments.  The slice routines were rewritten to work with base.
They work when it's just one slice.  A testchunker.py program
doesn't show any trouble so it might need more work.
Got testknn.py to work for splits -- still fails on NVIDIA though.

Cleaned up helpers.py a little -- less debug output, switchable platforms.

Now performing the results generation in the slice loop in testknn.py
and that seems to have fixed the problems.  Cleaned up debug output.
knnplus works and clidt returns reasonable values!

I've committed the changes to clidt.py that make the maps I'm
currently using, but they need cleaning.

knnplus.cl got all of knn.cl's changes as testknnplus.py got those
from testknn.py.  The failure ratio was higher with knnplus but still
under one percent on large files, and the maps look reasonable at
first glance.
Major updates to working code.

Converted helpers.py to use compressed pickles.  Need to write a
function that specifically builds pickles.  Not important now.  Also
modified all existing test routines to use compressed pickles.

Tweaked configure_cl() to support the new local size testing.

Moved the debug-laden knnplus.cl to knnplus-with-debug.cl and the
debug-free version to knnplus.cl.

Modified testknnplus.py to use more realistic size estimates and to no
longer print the unmatched output by default.
Replaced clidt.py and invdistree.py with idt.py

The new idt.py includes both OpenCL and cKDTree approaches for
calculating inverse-weighted values for crust and landcover.

knnplus.cl was renamed to idt.cl for the occasion.
Adding idt.py to source control.

Somehow this slipped through yesterday.

I need to rewrite the test routine to use both halves of idt.

For now, it'll depend on the .pkl.gz but eventually it'll pull stuff
from the Region directories.
Cleanup.

Moved testidt.py into idt.py.  Deleted no-longer-used files.