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
Add Lithuanian translations

Change-Id: Iad3e2f31cb2272c4215d96f99f61c8cf4c9f694f
Revert back to original daemon client usage behavior.
Fix ART by always using the daemon client on API 19+.

Change-Id: I69b31e339cec2f71d2de9b0468d7dcab1d3ea078
Superuser: CA translations 

Change-Id: I2ce0e0766ce56a506364d9b5a982fb86006ce205
Merge "Revert back to original daemon client usage behavior. Fix ART by always using the daemon client on API 19+." into cm-10.2
1024

Change-Id: Ic5afc4fd94ee5449dfc241ff48bfba87921f2988
su daemon fixes:

Do not require a client connection unless actually necessary.
Only use the client on initial invocation of main(), and not from
invocation of run_daemon_client, which may recursively call
main via another client on API 19.

Change-Id: I136f9a3b829bf0a4f5335a83412cc3a8cd512856
fix tab

Change-Id: Ie8fca086e7bc496ba8fca591e4c3fb008172f198
1026

Change-Id: I07fd878894ba1fbb401ea5621e6cc9d0d7fcf4f5
wtf

Change-Id: I0ad34d3d1c104693c47fac82ce32a05626eb6b17
Fix typos.

Change-Id: I9b2658336ac4d66df7cf745b8d58d8d49813ec16
Improve logging code.

- Write to log buffer ourselves instead of calling log, so the printed
  pid is correct
- Reduce debug spam

Change-Id: I9afe7249fc589268ea61419a7cfc724897981e9e