camput: more TreeUpload work; adds NodeWorker helper.
camput: more TreeUpload work; adds NodeWorker helper.

Change-Id: Ie5919faa34fd2f6eb1b61669598e0a06e1d8ba07

henrylee2cn/camlistore,angelcabo/camlistore,angelcabo/camlistore,ginabythebay/camlistore,marook/camlistore,nimbus/camlistore,minusnine/camlistore,minusnine/camlistore,tgulacsi/camlistore,angelcabo/camlistore,raff/camlistore,kbajey/testrepo,robryk/camlistore,apparentlymart/camlistore-debian,nimbus/camlistore,slspeek/camlistore_tls_test,raff/camlistore,nimbus/camlistore,fgeller/camlistore,mortenpi/camlistore,raff/camlistore,fgeller/camlistore,slspeek/camlistore_namedsearch,edrex/camlistore,colemickens/camlistore,slspeek/camlistore_tls_test,tgulacsi/camlistore,minusnine/camlistore,toshnix/camlistore,tgulacsi/camlistore,raff/camlistore,colemickens/camlistore,slspeek/camlistore_tls_test,mortenpi/camlistore,google-code-export/camlistore,nimbus/camlistore,nimbus/camlistore,camlistore/camlistore,stevearm/camlistore,henrylee2cn/camlistore,mpl/camlistore,nimbus/camlistore,ginabythebay/camlistore,tv42/camlistore,tv42/camlistore,angelcabo/camlistore,angelcabo/camlistore,robryk/camlistore,stevearm/camlistore,raff/camlistore,robryk/camlistore,tgulacsi/camlistore,stevearm/camlistore,jhuckabee/camlistore,google-code-export/camlistore,jhuckabee/camlistore,slspeek/camlistore_namedsearch,google-code-export/camlistore,camlistore/camlistore,mpl/camlistore,jakubbrzeski/camlistore,ginabythebay/camlistore,toshnix/camlistore,apparentlymart/camlistore-debian,minusnine/camlistore,edrex/camlistore,robryk/camlistore,tv42/camlistore,henrylee2cn/camlistore,angelcabo/camlistore,toshnix/camlistore,colemickens/camlistore,pombredanne/camlistore,edrex/camlistore,google-code-export/camlistore,minusnine/camlistore,pombredanne/camlistore,raff/camlistore,nimbus/camlistore,henrylee2cn/camlistore,toshnix/camlistore,stevearm/camlistore,kbajey/testrepo,pombredanne/camlistore,slspeek/camlistore_namedsearch,ginabythebay/camlistore,angelcabo/camlistore,edrex/camlistore,toshnix/camlistore,tgulacsi/camlistore,jakubbrzeski/camlistore,pombredanne/camlistore,fgeller/camlistore,angelcabo/camlistore,kbajey/testrepo,kbajey/testrepo,robryk/camlistore,jhuckabee/camlistore,pombredanne/camlistore,ginabythebay/camlistore,toshnix/camlistore,colemickens/camlistore,mpl/camlistore,google-code-export/camlistore,google-code-export/camlistore,marook/camlistore,tv42/camlistore,fgeller/camlistore,fgeller/camlistore,robryk/camlistore,fgeller/camlistore,colemickens/camlistore,mpl/camlistore,camlistore/camlistore,mortenpi/camlistore,colemickens/camlistore,google-code-export/camlistore,marook/camlistore,slspeek/camlistore_tls_test,tv42/camlistore,ginabythebay/camlistore,toshnix/camlistore,kbajey/testrepo,stevearm/camlistore,camlistore/camlistore,angelcabo/camlistore,henrylee2cn/camlistore,minusnine/camlistore,apparentlymart/camlistore-debian,slspeek/camlistore_namedsearch,slspeek/camlistore_tls_test,toshnix/camlistore,kbajey/testrepo,ginabythebay/camlistore,jhuckabee/camlistore,pombredanne/camlistore,pombredanne/camlistore,slspeek/camlistore_namedsearch,apparentlymart/camlistore-debian,slspeek/camlistore_namedsearch,edrex/camlistore,fgeller/camlistore,ginabythebay/camlistore,minusnine/camlistore,apparentlymart/camlistore-debian,kbajey/testrepo,fgeller/camlistore,fgeller/camlistore,mpl/camlistore,camlistore/camlistore,ginabythebay/camlistore,mpl/camlistore,raff/camlistore,camlistore/camlistore,slspeek/camlistore_tls_test,jakubbrzeski/camlistore,marook/camlistore,camlistore/camlistore,jhuckabee/camlistore,kbajey/testrepo,tv42/camlistore,tgulacsi/camlistore,nimbus/camlistore,edrex/camlistore,marook/camlistore,mortenpi/camlistore,marook/camlistore,jakubbrzeski/camlistore,camlistore/camlistore,robryk/camlistore,stevearm/camlistore,colemickens/camlistore,tgulacsi/camlistore,pombredanne/camlistore,colemickens/camlistore,edrex/camlistore,apparentlymart/camlistore-debian,tv42/camlistore,camlistore/camlistore,slspeek/camlistore_tls_test,marook/camlistore,apparentlymart/camlistore-debian,mortenpi/camlistore,robryk/camlistore,slspeek/camlistore_namedsearch,stevearm/camlistore,mortenpi/camlistore,apparentlymart/camlistore-debian,slspeek/camlistore_tls_test,marook/camlistore,jhuckabee/camlistore,tv42/camlistore,pombredanne/camlistore,jakubbrzeski/camlistore,colemickens/camlistore,minusnine/camlistore,mortenpi/camlistore,apparentlymart/camlistore-debian,jhuckabee/camlistore,henrylee2cn/camlistore,google-code-export/camlistore,minusnine/camlistore,mpl/camlistore,jakubbrzeski/camlistore,slspeek/camlistore_namedsearch,tv42/camlistore,henrylee2cn/camlistore,edrex/camlistore,henrylee2cn/camlistore,stevearm/camlistore,tgulacsi/camlistore,raff/camlistore,toshnix/camlistore,stevearm/camlistore,jakubbrzeski/camlistore,jakubbrzeski/camlistore,jhuckabee/camlistore,mortenpi/camlistore,mpl/camlistore,slspeek/camlistore_namedsearch,raff/camlistore,mpl/camlistore,mortenpi/camlistore,nimbus/camlistore,henrylee2cn/camlistore