Fix #81: use C2HS from "dist" directory for running tests

Instead of just picking up whatever version of C2HS is installed in
the user's path, run tests using the just-build version of C2HS in the
"dist" directory.
Use older version of hsqml in regression suite to avoid Qt5 dependency
Fix #77: better handling of "block" syntax and "non-GNU" preprocessor flags

 - Remove "--no-blocks" and "--no-gnu" command line options.

 - Undefine __BLOCKS__ preprocessor symbol always (our C parser
   doesn't understand this syntax so we can never deal with it
   correctly).

 - Add {#nonGNU#} directive to signal that GNU-specific preprocessor
   symbols (__GNUC__, __GNUC_MINOR__, __GNUC_PATCHLEVEL__) should be
   undefined during processing of a CHS file.
Trying to get Travis tests working again
Trying to get Travis tests working again
Trying to get Travis tests working again
Trying to get Travis tests working again
Trying to get Travis tests working again
Trying to get Travis tests working again
Trying to get Travis tests working again
Allow free intermixing of options and input files (fixes #86)
Possible solution for #82 and #85
extractCallingConvention checks function pointers

The extractCallingConvention function should check for any calling
convention attributes inside function pointer declarators.
dynamic foreign imports support stdcall

Dynamic foreign imports are generated by c2hs whenever C function
pointers need to be called. Function pointer declarations may contain
attributes which specify a calling convention to be used.

This patch Applies changes made in
a3ac24e1c7d3f2ec542364643f4346caba1a4915 to the case of "dynamic"
foreign imports.
Resolve FIXME comment with newly supplied argument
implement missing Enum members

The default implementation of succ, pred, enumFrom and enumFromTo error
out when the defined tags are not contiguous. This patch provides
implementations for those functions that work even this case.
Note that the new functions should _agree_ with the default implementations,
that is, they only produce different results when the default
implementation would return bottom.

This is especially useful for "flag" types where a list of all flag
values is needed to check them against a bitmask
sort enum constructors by tag values

As it stands now, enumeration constructors are defined in the order they
are given in the c source, but they might not be in ascending order of
value. This prevents derived Bounded instanced from
working properly. Reordering the constructors solves this problem
without resorting heavier measures like creating custom instances. Also,
it only effects enums with explicit tags.
Render better error message when file doesn't exist
Generate preprocessed file and dumped hsc in specified directory
Disable CUDA regression suite examples for now