android: layout optimizations for small screens
android: performance tweaks
android: Projects tab layout optimization and bug fix
android: battery low suspend reason with current charge level and target
server: fix bug related to job-size matching

Problem: a workunit could error out with unsent results.
The feeder skips such results, but the size_regulator counts them
and doesn't so doesn't promote any new results.
Solution: the feeder scans for results even with workunit errors.
If marks these results as state OVER, outcome DIDNT_NEED
android: redesing of project dialogs
android: redesing preference dialogs
Merge branch 'master' of ssh://boinc.berkeley.edu/boinc-v2
server: compile fix for recent gcc
Condor interface: various fixes, mostly from Jaime Frey

- XML parser: for parse_string(), malloc the 256KB buffer instead of
    allocating it on the stack; the latter crashes threads with 32KB stacks.
    However, do the malloc() only if we've actually seen the start tag
    (this required a bit of code shuffle).
- BOINC GAHP: escape spaces in error msgs
Android: tweak some messages
Include <cmath> instead of <math.h> various places
Manager and GUI RPC interface: fix possible buffer overruns

If the user typed an extremely long URL into the
Attach to Account Manager wizard, a buffer overrun could result.
There were several places in the code that assumed user-entered
URLs are small (e.g. 256 chars):
- canonicalize_master_url.cpp()
- several GUI RPC interfaces, when generating XML request message
- URL-escaping (not relevant here, but fix anyway)
Change all these to stay within buffers regardless of URL size.
Note: do this by truncation.
This will cause error messages like "can't connect to project"
rather than saying the URL is too long.  That's OK.
boinccmd compile fixes