Some changes that eliminate various Epydoc errors.
Some changes that eliminate various Epydoc errors.

- Django supported constants are initialized before documentation is built
- AppEngine location is added to system path
- Some modules are explcitly excluded from code instrospection.

The most interesting point is the last one. Please take a look at the following example:

class A(ndb.Model):
  foo = ndb.KeyProperty(kind='X')

class B(A):
  foo = ndb.KeyProperty(kind='Y')

Before model B is analyzed, model A must be loaded. These classes are not created by regular type constructor. They have their own metaclasses. foo member is transformed into a more sophisticated structure. One of its features is that when an instance assigns foo a value, it is checked if it is really a Key (foo is ndb.KeyProperty so a.foo must be set to ndb.Key). Otherwise, it is a BadValue error.

Here, when class B is analyzed, the error described above is raised and the message says foo cannot be assigned KeyProperty because Key is required. This is obviously not right, as class B is obviously not an instance of class A. It is likely that it is an issue with how Epydoc inspects classes. It has to be investigated further, though.

It is not a big issue, as model classes are still parsed, so documentation should be created for them.

rhyolight/nupic.son,rhyolight/nupic.son,rhyolight/nupic.son