More subsurface files and their modules

Almost all relevant subsurface files are now taken. This could be better
achieved by making a subsurface submodule. (Future)
For building these files, appropriate module addition for ndk-build and cross
compilation using ndk-standalone-toolchain is done.

Signed-off-by: Venkatesh Shukla <venkatesh.shukla.eee11@iitbhu.ac.in>
Add getline on android

Android does not contain getline function. To overcome this trouble, an
implementation of getline is added. Appropriate changes are made in
jni/Android.mk and linux.c
The getline code is taken directly from android git repo.

Signed-off-by: Venkatesh Shukla <venkatesh.shukla.eee11@iitbhu.ac.in>
pw_gecos not available in struct pwd android

Hence, pw_name is used in its place.

Signed-off-by: Venkatesh Shukla <venkatesh.shukla.eee11@iitbhu.ac.in>