Fix reST syntax error
Use identity comparison operators (is, is not) for comparison to None

According to PEP8: "Comparisons to singletons like None should always be
done with is or is not, never the equality operators."

http://www.python.org/dev/peps/pep-0008/#programming-recommendations
PEP8: "Don't compare boolean values to True or False using ==."

In python booleans are singletons. Therefore to check whether an
variable holds a True/False boolean one needs the identity comparison
operators (is/is not). To check whether a variable evaluates to True/
False one should not use a comparison operator at all.
Add test/**/__init__.py files

This enables the test directories to be treated as packages and the
tests to be loaded as modules from the root directory:

/path/to/pymad$ python2 -m unittest test.cpymadtest.test_model_locator
Ignore more auto-generated files in src/ tree
Derive CpymadTest from object, instead of unittest.TestCase

For the unspecialized base class `CpymadTest`, it makes no sense to
execute the `test_xxx` methods defined herein. If derived from
`unittest.TestCase`, however, the `unittest` module can not distinguish
this class from a real test class and executes the `test_xxx` methods
anyway. This makes it impossible to execute the tests with a command
like:

    unittest -m test.cpymadtest.test_lhc
Add resource abstraction library

This is meant for easier and more uniform handling of different types of
resources. May they be couchdb documents, .egg package data or ordinary
file system entries.
Use metaclass that is capable of copying docstrings
Make the resource providers distinct modules of a package

Keep concrete resource providers independent. This is good practice and
improves extensibility.
Add test for PackageResource.filename()

Extracted files will now be removed after done using.
Improve documentation of new classes
Add test for Interface base class
Add cpymad.model_locator

This module is planned to provide adapters for use by cpymad.model that
separate the location/loading process of the model and its files from
the actual business logic.
Add tests for cpymad.model_locator.MergedModelLocator
Move cern.libmadx.resource to cern.resource

In fact the code in this folder is largely independent of Mad-X, so it
could be distributed in a completely separate package.
Put files in src/cern/resource under quasi-public domain

As these files may be useful in other applications it is convenient to
have them under public domain.
Add license notice to src/cern/cpymad/model_locator.py

Licensed as Apache 2.0 like the rest of the project.
Delete only extracted files in resource.package.PackageResource.filename

Packages may be filesystem or zip. For zipped packages the filename()
method should extract the file and delete it after usage. For filesystem
the resource file, however, the resource file must never be deleted.
Migrate cpymad to new ModelLocator/ResourceProvider architecture

Start using the cpymad.model_locator as model loader in cpymad.service
and cpymad.model.
Derive CpymadTest from object, instead of unittest.TestCase

For the unspecialized base class `CpymadTest`, it makes no sense to
execute the `test_xxx` methods defined herein. If derived from
`unittest.TestCase`, however, the `unittest` module can not distinguish
this class from a real test class and executes the `test_xxx` methods
anyway. This makes it impossible to execute the tests with a command
like:

    unittest -m test.cpymadtest.test_lhc