Add history to the coffee interactive interpreter that persists between ...

...sessions using a ~/.coffee_history file in a similar way to bash. Code based on repl.history and Node pull request 3178 with modifications.

https://github.com/tmpvar/repl.history
https://github.com/joyent/node/pull/3178/files

Modifications:
- Converted to CoffeeScript
- Use ~/.coffee_history filename by default
- Only read up to 10240 bytes of history instead of everything
- Set default history index to -1 (i.e. pressing up will then show the last saved command first)
- Make history file optional, disabled with {historyFile: false} in `repl.start` opts
- Added unit test to read and process a line from a dummy history file

Tested locally on Mac with Node 0.10 and CoffeeScript 1.6.2 and it is working very nicely for me. There may be path issues between different operating systems, however.