Make request line parsing more robust

- Break up a gnarly function for parsing requests and opening a
  socket.
- Explicitly handle some error cases.
- Document where the request handling is not spec-compliant.
- Add unit tests.

Bug: 15324060

Change-Id: I7f7b2dbb3820745c217fcd6a4507d36bab1f1edb
diff --git a/Android.mk b/Android.mk
index fa85200..7a0bbfd 100644
--- a/Android.mk
+++ b/Android.mk
@@ -17,6 +17,8 @@
 LOCAL_CERTIFICATE := platform
 LOCAL_PRIVILEGED_MODULE := true
 
+LOCAL_PROGUARD_FLAG_FILES := proguard.flags
+
 include frameworks/opt/setupwizard/library/common.mk
 
 include $(BUILD_PACKAGE)