Added 'name' annotation for the C++ annotation to override the basename used for field accessors
Add enumerant as a target for the name annotation
Added support for structs to the name annotation and fixed discriminant check names
using implicit conversion from nullptr to an empty Maybe
Added a basic name annotation test
Added calls to all generated accessors to test name override
Added name annotation tests for nested structs and named unions
Added test for renamed deeply nested enum
Updated CONTRIBUTORS
Added name annotation support for interfaces, methods and params
Added name annotation support for groups
Added name annotation support for unions
Update implementation links to add Andreas' wireshark plugin and re-organize.

The previous organization inappropriately made it seem like some implementations weren't ready for production even though they are actually being used in large-scale production already. The problem is that these projects haven't actually implemented 100% of the spec, but they have no need to, because what they have is good enough for their purposes, so their categorization was unlikely to change. I've now simply classified implementations as "Serialization + RPC" vs. "Serialization only", which seems like the most that can be said without getting subjective and ambiguous.
Merge pull request #84 from jjwchoy/name-annotations

Added 'name' annotation for the C++ annotation to override the basename ...
Fixes #90. The bug causes floating-point fields with non-zero defaults to be corrupted if they are set to NaN on a MIPS machine.