Building efficient mobile systems and applications for supporting information exchange in resource limited settings