Fix incorrect malloc.
Change memcpy to memmove in string_split_quotes

String destinations may overlap. Per Peter Bui from man pages, memmove
allows overlap, and memcpy does not.
Merge branch 'parse_leak'

Fix for Makeflow Parsing Error (#483)
Fixes a boundary case where the WQ master can get stuck if there
are only finished tasks to retrieve and nothing else happening in the system.
Replaced boilerplate.
Merge pull request #485 from dthain/master

Fix Work Queue hang when there are only finished tasks to retrieve.
change names of create_mountlist env_process parrot_pack
create_mountlist becomes parrot_package_run;
env_process becomes parrot_package_env;
parrot_pack becomes parrot_package_create.
unify parameters of parrot_package_*; add more functions into parrot_package_run
change the preservation solution of environment variables
add --env-list parameter to parrot_run
change env-path parameter of parrot_package_create to env-list
remove 'parrot_package_env', merge its function into parrot_package_run.
add existence test of env-list and name-list parameters
add short versions for --name-list and --envlist parameters of parrot_run
add parameter exsitence check for parrot_package_run
adjust the location of time log of parrot_package_create
change parrot_package_* documents
let parrot_package_create support item without caller
the default item of namelist is filename|caller
add ld-linux* under /lib* directories into namelist file
add error check for --name-list parameter