Enabling dataset UUID setting through library upload, upload1 tool, and galaxy.json file
Update lwr_client through https://bitbucket.org/jmchilton/lwr/commits/3034b5cb789a6c96b005b838542c6e7c34c2faea.

UChicago reported some issues with the use of mmap in the LWR client for large files. To get around this, I have implemented an optional alternative transport layer for the LWR client that is backed by pycurl instead of urllib2. This can be enabled by setting the environment variable LWR_CURL_TRANSPORT=1 for the Galaxy process. If LWR_CURL_TRANSPORT is set, the python pycurl package must be installed.
Breakup big get_path_paste_uploaded_datasets function in library_common.py into smaller more extensible pieces. This is useful in implementing multiple file dataset uploads downstream but is also a good refactoring on its own.
Breakup big get_server_dir_uploaded_datasets function in library_common.py into smaller more extensible pieces. This is useful in implementing multiple file dataset uploads downstream but is also a good refactoring on its own.
Refactor code related to expanding multi inputs to more easily allow for switching between matched and product mode in the same workflow execution.
Implement UI multi batch workflow inputs.
Touch up UI related to multi input batch mode - move icon up by the multi document icon, switch from icon to CSS span, cleanup variable names.
Implement macro mechanism for tool config XML. This should allow for a drastic reduction in 'code' duplication across XML files in a tool repository or inside of an XML file (repeated blocks in different when statements for instance).
Extend tool config macro engine so that macros may be rendered inside other macros.
Add ability to pass sub-blocks of XML to macros and corresponding ability to render those (via the new <yield /> tag) from macros.
Rework some duplication out tophat wrappers using macros. This dmeonstrates how macros can reduce duplication inside a file (e.g. the dbKeyActions macro) and between files (e.g. the own_junctionsConditional macro).
Merged in jmchilton/galaxy-central-lwr (pull request #118)

Implement optional, alternative pycurl backend for LWR client.
Handle new repository_metadata columns when resetting metadata on repositories in the tool shed.
Passing extra parameters from root index to tool index. This will allow for tools to pick up parameters from the request URL and map them with the request_param_translation, even when inside the root frame.
Implement equivalent of dataset display through the API.
Python 2.5 compatibility fix for lwr client updates.
Update HDA API return value to reflect new API-based path for downloads.
In previous commit, I modified documentation in the wrong place.
For external tool requests, without a 'URL' parameter but with other parameters, still process the incoming parameters.
This will allow for tools that have 'request_param_translation' tables without the 'URL' parameter mapping to accept external requests and fill in their tool form page.
Move ~/lib/galaxy/tool_shed to ~/lib/tool_shed, and move the ~/lib/galaxy/util/shed_util componets to ~/lib/tool_shed/util.