Added SBT and altered copyright notice.
Major Refactor Part 1. Move out Flag parsing to FlagField.

This makes FlagField's responsibility to parse new strings according to it's data type, and track which Java Field it is attached to. We no longer subsitute the whole Flag<> field, we just swap the value inside it.

This greatly simplifies the parsing methods and makes it possible to:
 - extend FlagField with custom flag parsers provided by users
 - allow non-static fields to be bound (for Scala), we no longer need to keep track of which object the Field is attached to

 More refactors to come: extracting the parser, extracing the scanner (to allow scanning a set of provided objects).
Fix broken parsing of short-hand Boolean flags.
Major Refactor Part 2. Split out Scanners and Registry.

Introduce the ability to parse non-static Flag fields of predefined objects. This is super useful for Scala, where static fields can't exist. This requires passing in a Set of objects to reflect on, additionally to the standard Reflections lookup of static fields.

Split out a Registry object for the flags, that allow for setFlag() and getFlag(). This will be useful to add JMX/Servler-based dynamic flag flipping.

Refactor tests, moving flags out into a separate package testclasses/.

Rename Flags -> Flagz and make the class super simple, exposing only static interfaces. Move functionality to Scanners and Registry.
Add JMX export for FlagInfo definitions.

This allows modifying Flag<> values in real-time by using the MBean server, for example through Java Mission Control (jmc). This is extremely helpful, for example, when debugging.
The same mechanism can be used to build a Servlet that would list flags and default values.

Add example JmxSampleApp. These need to be moved to a separate package.