admin: Add support for "Select All"

Add support for the "Select All" operation. For this operation, we want
to provide as much functionality as possible to users, without
sacrificing speed. This means that we want to give to the user the
ability to see what he/she would normally see, minus some parts of the
summary that are not necessary. To do that, we try to optimize our
queries as much as possible. Below follows our flow for this operation:

* We check if the Datatables request we receive is unpaginated.
* If the request is unpagingated, we narrow the QuerySet to the least
  possible fields that we may need.
* For each row, we use a normal dictionary instead of the OrderedDict.
* We collect all the necessary info for the actions and then return.
* Finally, we gzip the response.

Caveats: Only the users behave normally when selecting more than 1,000
instances. The other categories have issues with the contact info
(due to the fact that cyclades' db is in a different node than astakos'
db).

Fix apyrgio/synnefo#100 and fix apyrgio/synnefo#104
Merge branch 'feature-admin-select-all' into feature-admin
admin: Remove contact actions from non-users

Remove the contact action in the details template from items that are
not users.

Fix apyrgio/synnefo#106
Merge branch 'feature-admin-details-contact' into feature-admin
admin-ui: Remove cursor pointer from disabled buttons

Fix apyrgio/synnefo#116
admin-ui: Fix JS bug

Fix apyrgio/synnefo#110
admin-ui: Modify design
admin-ui: Fix JS bug
Merge branch 'feature-admin-ui-new' into feature-admin