Add support for different modes.  Added numeric mode.
Support alphanumeric mode
Cleanup