cgi: Add deserialization framework

This commit adds two function helpful when handling network messages:
* make_liz_message - to serialize a network message
* deserialize - to deserialize a response

Implementation of deserialize allows users to do something like:

  ret = deserialize(buffer, List(Tuple("LLL") + List(String)))

A network message LIZ_CLTOMA_LIST_GOALS is rewritten to use this
framework (because it would be reused in the near future to implement
other tabs in the web interface)

This commit also fixes a bug in cgiserv.py -- it adds a 'globals'
parameter equal to an empty dictionary to execfile() in cgiserv.py. It
makes mfs.cgi script run in it's own environment (not in environment of
a function which calls execfile) which makes it possible to use global
names normally in mfs.cgi.

Change-Id: I122f13229ca75f8bed8bed7e54d23c1d30d37eed
cgi: Add "Chunks" tabs

This commit adds a tab with information about availability of chunks for
each goal: how many chunks are safe, endangered or lost, how many copies
are will be replicated and how many copies will be removed. This makes
it possible to track state of the system which uses custom goals -- the
chunk matrix from "Info" tab doesn't present all the needed information.

Change-Id: I3d86f2d0e6254d8cad944cbcab4d3b23f5e156e3