Got basic piping working for real!

Child currently sends output to parent, who then prints output to
stdout.  Woo!
Can now change directories

Can now change to almost any path. The following commands don't work
[yet] though:

cd -
cd ~
cd (by itself)

Conflicts:
	dash.c
Refactored change dir functionality

Also ensured memory is properly being freed.  All good so far. :)
Added time test for fgets vs read

Also cleaned up some stuff
Made rc useful in changeDir()
Added info on how to compile and run
Added info about time tests
Minor cleanup change
Added 'exit' and 'q' as commands to quit
Merge commit '7dcf1dc633c55184effeb4546c1378b336403fde' into piping

Also added a printf to the signal handler.  Guess the reference?

Conflicts:
	README.md
	dash.c
Added some warning flags
Rewrote parseUserInput without strtok

Conflicts:
	dash.c
Refactored fork/exec code into a recursive call

Works so far.  Commands still aren't piped together yet though.  Right
now they still execute sequentially but it's within the recursive
function.  Win!
Fixed some memory allocation problems
Made some more memory cleanups
Memory cleanup
Fixed a typo that caused a compilation error
Piping works, but error checking needs improvement, etc
Some cleanups
Temp piping solution. It kinda works but still really buggy.