Added support for GNU readline at the REPL

Hi,
I've implemented both cursor movement and command history at the REPL with GNU readline. This also required a rewrite of CMakeLists.txt (which had broken at some point in the 26 days since it was last edited anyway) and some small additions to the Makefile.

Compilation with the old custom version of readline instead is still possible with either
'make no-read-line' 
or 
'mkdir build && cd build && cmake -DREAD_LINE=0 .. && make'
but if you feel that, for now at least, it would be better to use this as the default target and have GNU as the specified option, this would be a trivial change to make.