* Added windows supports
The original patch was from Dušan Majkić, link: https://github.com/dmajkic/redis/commit/0081a7b4ca8061572afb4a29edd8a4d78377f0a5

* Added support for HOME and END keys and prevent duplicate consecutive lines,
The original patch was from Dvir Volk, see https://github.com/antirez/linenoise/pull/21

* Added ctrl-r search for linenoise,
The original patch was from Jalil Karimov, see https://github.com/antirez/linenoise/pull/29
changed it starting from last line, also added Windows support for ctrl-r

* Added tab search after press ctrl-r

* Added ctrl-l, clear screen support for Windows

* Added ctrl-w, delete previous word support for Windows

* Got rid of some magic numbers
The original patch was from Gerhard R.

NOTE: refreshMultiLine() didn't work on Windows yet. Any one who wants to port it to windows could take some ideas from libuv, see uv_tty_write_bufs() function in src/win/tty.c