Change safeSum to return nulls when all datapoints are null

Refs #32
Add test for sums of nulls
Fix docstring
Handle DSes of different lengths

Apparently not an issue with Carbon but it can happen with Cyanite and
KairosDB.
Fixed lint tests
Sort nodes by path in render

This matches the graphite-web behavior
Merge pull request #71 from natemueller/sorted-nodes

Sort nodes by path in render
Merge pull request #70 from natemueller/zip-longest

Handle DSes of different lengths
Add forgotten grep to functions
Switch request.GET and request.POST to last-provided wins to match Django's request handling

Refs #74
Merge branch 'master' of github.com:brutasse/graphite-api
read index from file if it exists
call recurse when index file is empty
Merge pull request #75 from liyichao/metrics_index

read index from file if it exists
Port graphite-project/graphite-web#1015
Add deploy doc for nginx + uwsgi
More elegant nginx + uwsgi config
Merge branch 'master' of github.com:brutasse/graphite-api
Merge pull request #79 from juise/juise/nginx-uwsgi-doc

Add deploy doc for nginx + uwsgi
Merge branch 'master' of github.com:brutasse/graphite-api