Change enum values to int64 to allow unset sentinel in their value space.

Change FromString helper method to return an optional error.
Improve error handling in tutorial code.