Checkpoint for sms settings page
Refer to requirements.txt in docs-requirements

Rather than explicitly copying stuff over
replace uiElement.map_list with a richer widget that allows sorting

uses knockout but provides a similar interface to the uiElement functions
remove newly unused code
fix issue with remote mm, where media that is used more than once in an app wouldn't get downloaded to each of it's file paths
Add validation
blank totals for non-total columns
fix total rows in reports
update map report display config
add total columns to age summary report
fix test
Merge pull request #1625 from dimagi/testfix

fix test
Merge pull request #1623 from dimagi/total_columns

add total columns to age summary report
Merge pull request #1622 from dimagi/gsid_map

update map report display config
Merge pull request #1621 from dimagi/gsid_total_row

fix total rows in reports
Merge pull request #1620 from dimagi/totals

blank totals for non-total columns
automatically focus username input on login screen

woot
Merge pull request #1626 from dimagi/login-focus

automatically focus username input on login screen
fix bug with session data in trialconnect reports
Merge pull request #1627 from dimagi/tc

fix bug with session data in trialconnect reports