0.21: 2014-01-23
 * Added option to disable IPv6 entirely and added more automatic IPv4
   fallbacks

0.20: 2014-01-20
 * Found yet another way that Windows can fail to support IPv6.
 * Added new utility functions get_global and set_global

0.19: 2013-08-29
 * Client can now do an in-memory upgrade of server, as long as server is
   running version >= 0.09. 
 * Removed --class (-c) option, replaced with --verbose (-v). The -c option was
   generally only used to specify QuietServer, which is the default now.

0.18: 2013-08-26
 * Implemented __setattr__ and __delattr__ on DefaultRemoteProxy. User-defined
   subclasses must define local instance attributes on the class itself to avoid
   inadvertently setting attributes on the remote object.
 * Added compression as option in parse_connection_spec
 * Fixed bug where typedat was not being cached properly and new proxy types
   were being created for each new object
 * Fixed raw_{get|set}_attribute and added tests for them
 * Fixed bug where proxy classes defined in define_common() were not being used
 * Fixed race condition with ThreadedClient

0.17: 2013-08-23
  * Added ability to bind server to a specific address; Added IP
    access controls.
  * Fixed compatibility with Python 3 - All features, including service
    installation, now work
  * Fixed bugs in raw_get_attribute and raw_set_attribute
  * Changed DEFAULT_PORT to 11998 for python3 so both python2 and python3
    services can run at the same time
  * Fixed bug where server would refuse to start with a blank key
  * Fixed bug in make_singleton
  * Changed the styles in the documentation a bit

0.16: 2013-08-23
  * Expanded documentation: added README.html generated from README.txt
  * Reworked the way proxies are handled
  * added 'origexc' parameter to common methods
  * Exported methods now automatically detected, and attribute access passed
    through
  * Breaks compatibility with older versions, and has code to gracefully detect
    and report incompatibilities
  * Added raw_get_attribute and raw_set_attribute
  * Client.peername now contains hostname instead of IP address
  * Fixed bug where setting remote global value using _GlobalProxy fails
  * Changed AutoThreadingClient to ThreadedClient, old name kept for
    compatibility

0.15: 2013-08-21
  * New function: parse_connection_spec
  * Fixed some bugs with AutoThreadingClient

0.14: 2013-07-25
  * Added support for service installation on Solaris

0.13: 2013-07-25
  * Added support for chkconfig (Redhat Enterprise Linux 5)

0.12: 2013-07-02
   * Added LSB compatible headers to init script

0.11: 2013-06-18
  * Fixed service removal on Debian 
  * Add --query-installed option

0.10: 2013-06-11
  * Fixed SetHandleInformation on Windows x86_64 
  * Fixed silent AttributeError bug in _GlobalProxy

0.09: 2013-05-20
  * Changed the way non-hex keys are used. This breaks compatibility with
    command line keys and keys not generated by -g.
  * Changed Windows code back to using subprocess due to weird bugs in
    multiprocessing.
  * Moved Linux service later in startup order.

0.08: 2013-05-20
  * Minor fixes to service installation
  * Added linux_service module 
  * Added service installation options to main script

0.07: 2013-05-11
  * Changed Windows server code to use multiprocessing instead of subprocess
  * Initial support for installing as a service on Windows
  * Changed single-file module into a package. Server specific functionality is
    now in easycluster.server.

0.06: 2013-02-27
  * Reverted 'max_response' argument of ClientGroup.read_responses to 'max'
  * Added _peer_version to Connection and server_version property to Client
  * Fixed bug where 'onerror' was never called even if given
  * Modified common definition initialization so that import and other errors
    are reported to the client
  * Fixed timeout and max_responses on ClientGroup.read_responses
  * Changing definitions so that compilation flags are not inherited (not
    everyone is ready for print_function).

0.05: 2013-02-19
  * Fixing regression with closed connections
  * Fixes compatibility with Python 3
  * Tweaked demo script

0.04: 2013-02-15
  * Fixed problem with keepalive messages 
  * Changed the way NonblockingResponses are handled
  * Added initialization parameters to be sent to the server - breaks compatibility with earlier versions
  * Added keepalive and timeout to AutoThreadingClient

0.03: 2013-02-15
  * Added reconnect() method to Client
  * Added public properties to proxies to get the connection
  * Implemented key file security on Windows

0.02: 2013-02-08
  * Deleted scripts/easycluster, replaced with entry point

0.01: 2013-02-07
  * Changed the definition of eval and added execblock 
  * Added setuptools manifest and bootstrap
  * Updated documentation
  * Updated server script
  * Added PyPI URL to setup.py

0.00: ???
  * Initial version
