Swap flag definition order to match enum order
Refactor SdssCentroid test to better use test utilities

The first several lines of the previous version could be accomplished
by simply inheriting from meas.base.tests.AlgorithmTestCase, which
additionally puts that code in setUp(), allowing it to be reused
for other test functions.

Also fixed non-conformant variable names.
Catch exception in SdssCentroid to replace log warning with set flag
Add edge flag for NaiveFlux, to account for cases when aperture doesn't fit in frame
Merge branch 'u/jbosch/DM-1331'
Fix trivial but critical bugs in forced transformed plugins
Merge branch 'u/jbosch/DM-240'
Use pex_exceptions macro to define FatalAlgorithmError

Unlike MeasurementError, this doesn't have any extra data members or methods,
so we should have been using this macro from the beginning to cut down on
boilerplate.
Remove unused MeasurementDataFlags mechanism

Given the choice between porting this placeholder to C++ or simply removing it,
I think it's better to remove it.  We can add it back in later if we have a need for it,
but for now it seems superfluous.
Don't pass current PluginMap to new plugins upon construction

None of them were using this currently, it's likely none ever will, and it would be
very difficult to support this for C++ algorithms.
Move typedefs/enums into a separate header
Add new utility classes for algorithm implementors

Unlike the old ones, these utility classes are purely optional:
they're intended to be used by the algorithms (or pure Python
plugins), but they're not required.  They do make it a lot easier
to adhere to the schema conventions, though.
Add base classes for new C++ Algorithm interface
Generic Python wrappers that turn Algorithms into Plugins
Rework PsfFlux into new Algorithm interface.