Part 1 of terminal support fix

Changed the daemon to use pseudo-terminals closer to the way SSH or telnet does. Changes are extensive because the slave device was being opened by the wrong end of the connection, ie. the client is the one which should be opening the master ptmx device.

SIGWINCH is still not being handled. The next commit will attempt to address this.
Added SIGWINCH handling and better cleanup

Added a task to forward SIGWINCH from the client to the daemon via the
correct ioctl. Terminal window sizing now seems to work correctly.

Also added signal handler to catch signals which can cause the client to
terminate, allowing the client to restore stdin's termios. Previously,
killing the su client using (for example) SIGTERM would result in the
terminal being left in an unusable state.
Refactored pseudo-terminal code into pts.c
Undo a change which resulted in dangling FDs
Removed a hackish check for stdout in pump()
Made scoket protocol uniform

Also eliminated some control flow branches
Changed when the client sends pts-slave
Treat each standard I/O stream separately
Eliminated use of FIFOs, factored PTY proxy code

Instead of opening FIFOs, we now send the standard I/O descriptors
across the Unix socket.

Also, the I/O pumps were moved to pts.c
assets: Add missing mips/ symlink

Bug #195 added MIPS binaries, but the assets/ symlink was missing.  This
means that update.zip still worked as expected on MIPS, but MIPS binaries
were missing from the apk.
Merge pull request #213 from cernekee/mips-missing-symlink-v1

assets: Add missing mips/ symlink
Minor typo fix in Italian language
Merge pull request #219 from GMagician/master

Minor typo fix in Italian language
Merge remote-tracking branch 'tance/terminal-support' into cm-11.0

Conflicts:
	Superuser/jni/su/daemon.c

Change-Id: I2739f6bcbed03636d7a2fb66377977cd16999926
Merge remote-tracking branch 'koush/master' into cm-11.0