Timer output now has count. Fixed sval test.
Removed uses of return_sval from qm test.
Moved implementations in sipmap to .cpp.
super instruction with only 'w' parameters for scalars and static enabled in sipmap
Changed setup_reader to virtual, not working !
Fix was to return Map&, Vector& instead of Map, Vector.
Can provide JSON input in addition to .dat

JSOPCPP (amalgamated source) library added to build.

A new utility to convert .dat to json has been added : print_init_file.
This utility is very similar to the init_file_dump in the acesinit
project. It can convert .dat to json.

In the previous commit(s), the SetupReader class was changed to be a
base class for a SetupReaderBinary & SetupReaderText (or
SetupReaderJson). In this commit, this change has been reverted.
SetupReader is now a single concrete class with no children. It has 2
constructors - one to initialize with a .dat file and the other to
initialize with a json file. It also has a method to output its contents
into json.

SetupWriter has also been provided with a json output method. This is
not used anywhere and is also not tested. Later, we might want to be
able to spit out json from the acesinit program.

For now, the workflow will be to convert a .dat file to a json using the
print_init_file utility, modify it if need be and use it with aces4 like
so:
./aces4 -j ccsdpt_test.json -s src/sial/qm
Refactored main - removed tau inits.

aces4 Main has been refactored.
Chunks of aces4 main code have been put into the
main_helper_methods.h header file.
Changed static timer init calls to macros
Refactored more methods from main into helper functions
Refactored profile & sipmap programs. Added tests.