title: PyCharm doesn't understand custom Manager of model
body: <p>I extend default model manager and add cache-specific logic to it:</p>
  
  <pre><code>class ReadOnlyManager(manager.Manager):
      use_for_related_fields = True
  
      def create(self, **kwargs):
          obj = super(ReadOnlyManager, self).create(**kwargs)
          cache.cache_read_only_object(obj)
          ...
          return obj
  
      def update(self, *args, **kwargs):
          raise ReadOnlyException()
  
      def by_id(self, object_id):
          return cache.retrieve_read_only_object(self.model, object_id)
  
      def by_lookup(self, lookup_key, lookup_value):
          return cache.retrieve_read_only_object_by_lookup(self.model, lookup_key, lookup_value)
  </code></pre>
  
  <p>Then I created abstract model that uses it:</p>
  
  <pre><code>class ReadOnlyModel(models.Model):
      class Meta:
          abstract = True
  
      objects = ReadOnlyManager()
  </code></pre>
  
  <p>I use it in concrete model:</p>
  
  <pre><code>class TokenType(ReadOnlyModel):
      code = models.CharField(_('code'), max_length=30, unique=True)
      description = models.CharField(_('description'), max_length=100)
  
      lookups = {
          'code': 'code'
      }
  </code></pre>
  
  <p>When I tried to call method specific for custom cache, for example *by_id*:</p>
  
  <pre><code>TokenType.objects.by_id(1) # This code works
  </code></pre>
  
  <p>PyCharm highlights it and writes "Unresolved attribute reference" warning. When I press CMD+Space after <code>TokenType.</code>, I see, that autocomplete box contains two <em>objects</em> items: one marked with function icon and have type ReadOnlyManager, second - with method icon and have type Manager.</p>
  
  <p>Is it PyCharm bug? How to enable autocomlete for additional methods in custom manager?</p>