ENH: Move GenericIO file in generic-io directory
COMP: Added option to enable BGQ specific code
ENH: Implement GenericIOBase

Implemented base class GenericIOBase. The sole purpose
of this class is to implement functionality that is common
for both readers and writers. This class is not intended to
be used directly by end-users.
ENH: GenericIOBase should not depend on MPI.
ENH: Abstract interface for GenericIO readers
ENH: Generic I/O Utilities singleton

This commit adds a new singleton class that provides
common utilities, such as byte-swapping and round-robin
assignment.
ENH: Add header data-structures in GenericIOBase

Added GlobalHeader,RankHeader and VariableHeader in the
GenericIOBase header since these data-structures are used
by both readers/writers.
ENH: Add SwapEndian ivar to GenericIOReader
ENH: Add global variables in GenericIOBase
ENH: Define GenericIODefinitions

Move global data-structures and variables in
GenericIODefinitions.hpp
ENH: SwapHeader utility functions

Added functions to GenericIOUtilities to swap
the endian of Global,Variable and Rank headers.
ENH: Move common functionality to GenericIOReader

Moved common functionality and data-structures to
all readers in GenericIOReader.
ENH: Simple driver to test GenericIOReader

Implemented a simple driver code to help guide the
development of the GenericIOReader.
COMP: Copy also *.hpp files to /include
ENH: Added more generic reader API
WIP: GenericIO MPI reader