Add nova time util functions to timeutils

Fixes bug #1009410

1. Add the following functions from nova/utils.py
- strtime
- parse_strtime
- is_older_than
- utcnow_ts
- advance_time_delta
- advance_time_seconds

2. Write unittests in tests/unit/test_timeutils.py

Change-Id: Ie0bba90833e2ed31bb5ab867a7c1a76a9901cacb
Add gettext support.

This patch adds gettext support for openstack-common modules.  In the
process of pulling in the rpc code, I didn't want to remove the usage of
_() that was already in there.  This allows it to stay in a way that
doesn't conflict with gettext usage in the project using
openstack-common.

Change-Id: I9cad006f81244f0cce7b7f28659fa1daa5a4268a
Revert "Add a load function wrapper to jsonutils"

This reverts commit 72840edc736b7f4d2366b5049f6516d8f5b901ff.

This change breaks kombu, so revert it since there is no specific need
for it.

Fixes bug 1009127.

Change-Id: Id0ef8b3948b63d0151289cb7ce8e617d9816bb4b
Add rpc to openstack-common.

Implements blueprint common-rpc.

This patch imports nova.rpc to openstack-common.  All of the necessary
changes to the core code to make it compatible with openstack-common
have been done in nova, so the only changes made here are to imports.

There are more changes made to the tests, but nothing that changes the
core functionality of the tests.

Change-Id: I17330aa4adfd0f22c449a2376833c7fe9dfd0cf1
Add support to include config aliases

Implements blueprint config-aliases

* Supports loading deprecated aliased options from a config file
* Supports using deprecated aliased CLI options
* For MultiStrOpt Can use mix of name and alias

Change-Id: I04678880bc8ee1f85335f5656367bd1437245c6e
Adds support for bol and eol spaces to ini files

  * Fixes bug 1009639
  * Adds tests

Change-Id: Id00563dfcc6f143c3e86ec380d66cffc967b8c48
Move testing dependencies to test-requires.

Change-Id: If0402077cc95811936c55182d90f15ccb37a6ad2
Merge "Adds support for bol and eol spaces to ini files"
Fix a pep8 error.

Change-Id: Iab7e703254a354764a5667425ef887b0afc89115
Merge "Add rpc to openstack-common."
Merge "Fix a pep8 error."
Fix RPC tests to not use assertIn

* Fixes Bug #1010244

Change-Id: Idac365a1719c49846ef105b90683e631310fbf6c
Handle xmlrpclib.DateTime types when serializing to JSON

Fixes bug 1010124

Convert xmlrpclib.DateTime types to datetime so they can be serialized
without creating an exception.

Change-Id: Ifcab69ad81d39d7f4066df5c71c6ab6734fb1fab
Merge "Add support to include config aliases"
Merge "Add nova time util functions to timeutils"
Make jsonutils.dumps more general

Fixes bug #1009848

Fixed jsonutils.dumps to receive other parameters

Change-Id: I34836ae89359bccb689a36a7b486e85bb41d70e4
Use 'is not None' instead of '!= None'

Fixes bug 1010570

pep8 suggests the former over the latter

Change-Id: Ice3a3b1cc2eea9228fffb4ee40fc360ff79054a3
Fix utcnow_ts to return UTC timestamp

Fixes bug #1011121

Use calendar.timegm instead of time.mktime

Change-Id: Idb8d470f1ef90162641d21122699a026fa38faf1
Merge "Use 'is not None' instead of '!= None'"
Add impl_zmq to rpc.

Part of blueprint common-rpc.

This driver just went into nova.rpc.  Pull it in over here.  I haven't
been able to test this, but I can't get the tests to work in nova,
either.

There is a bit of a complication with impl_zmq worth mentioning.  It
requires a service to run (nova/bin/nova-rpc-zmq-receiver).  Only once
instance of this service should run on a given machine, so it shouldn't
be copied into each project that uses rpc.  Once openstack-common is an
installed library, it can be distributed with that, but until then ...
we'll just leave it in nova for now.

Change-Id: I2bd067be58d943d4f3a90e013b22282217484872