##### SUMMARY
If a dependency of my collection uses a specific syntax in its `galaxy.yml` then it will break installs of my own collection.

##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
lib/ansible/galaxy/collection.py
lib/ansible/cli/galaxy.py

##### ANSIBLE VERSION
```paste below
$ ansible --version
ansible 2.10.0.dev0
  config file = None
  configured module search path = ['/Users/alancoding/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /Users/alancoding/Documents/repos/ansible/lib/ansible
  executable location = /Users/alancoding/.virtualenvs/ansible3/bin/ansible
  python version = 3.6.5 (default, Apr 25 2018, 14:23:58) [GCC 4.2.1 Compatible Apple LLVM 9.1.0 (clang-902.0.39.1)]
```

##### CONFIGURATION
defaults

##### OS / ENVIRONMENT
N/A


##### STEPS TO REPRODUCE
Create a collection like this:

```yaml
namespace: alancoding
name: bug
version: 0.0.1
readme: README.md
authors:
- Alan Rominger <alan.rominger@gmail.com>
description: A testing collection that depends on debops collection
license:
- GPL-2.0-or-later
license_file: ''
tags: []
dependencies:
  softasap.redis_box: "*"

repository: https://github.com/AlanCoding/collection-dependencies-demo
documentation: https://github.com/AlanCoding/collection-dependencies-demo
homepage: https://github.com/AlanCoding/collection-dependencies-demo
issues: http://example.com/issue/tracker
build_ignore:
- target
- output*.txt
- '*.tar.gz'
```

Now build and then install it.

```
repro_bug:
	rm -rf bug_debops/alancoding-bug-0.0.1.tar.gz
	ansible-galaxy collection build bug_debops --output-path=bug_debops -vvv
	ANSIBLE_COLLECTIONS_PATHS=bug_debops/target ansible-galaxy collection install bug_debops/alancoding-bug-0.0.1.tar.gz -f -p bug_debops/target -vvv
```

(ignore my folder name, originally I mis-attributed the error)

##### EXPECTED RESULTS
Installs. Nothing is wrong with this setup.


##### ACTUAL RESULTS

```paste below
$ make repro_bug
# rm -rf bug_debops/target
rm -rf bug_debops/alancoding-bug-0.0.1.tar.gz
ansible-galaxy collection build bug_debops --output-path=bug_debops -vvv
ansible-galaxy 2.10.0.dev0
  config file = None
  configured module search path = ['/Users/alancoding/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /Users/alancoding/Documents/repos/ansible/lib/ansible
  executable location = /Users/alancoding/.virtualenvs/ansible3/bin/ansible-galaxy
  python version = 3.6.5 (default, Apr 25 2018, 14:23:58) [GCC 4.2.1 Compatible Apple LLVM 9.1.0 (clang-902.0.39.1)]
No config file found; using defaults
Skipping '/Users/alancoding/Documents/repos/collection-dependencies-demo/bug_debops/target' for collection build
Skipping '/Users/alancoding/Documents/repos/collection-dependencies-demo/bug_debops/galaxy.yml' for collection build
Created collection for alancoding.bug at /Users/alancoding/Documents/repos/collection-dependencies-demo/bug_debops/alancoding-bug-0.0.1.tar.gz
ANSIBLE_COLLECTIONS_PATHS=bug_debops/target ansible-galaxy collection install bug_debops/alancoding-bug-0.0.1.tar.gz -f -p bug_debops/target -vvv
ansible-galaxy 2.10.0.dev0
  config file = None
  configured module search path = ['/Users/alancoding/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /Users/alancoding/Documents/repos/ansible/lib/ansible
  executable location = /Users/alancoding/.virtualenvs/ansible3/bin/ansible-galaxy
  python version = 3.6.5 (default, Apr 25 2018, 14:23:58) [GCC 4.2.1 Compatible Apple LLVM 9.1.0 (clang-902.0.39.1)]
No config file found; using defaults
Found installed collection gavinfish.azuretest:1.0.3 at '/Users/alancoding/Documents/repos/collection-dependencies-demo/bug_debops/target/ansible_collections/gavinfish/azuretest'
Found installed collection debops.roles03:2.0.1 at '/Users/alancoding/Documents/repos/collection-dependencies-demo/bug_debops/target/ansible_collections/debops/roles03'
Found installed collection debops.roles02:2.0.1 at '/Users/alancoding/Documents/repos/collection-dependencies-demo/bug_debops/target/ansible_collections/debops/roles02'
Found installed collection debops.debops:2.0.1 at '/Users/alancoding/Documents/repos/collection-dependencies-demo/bug_debops/target/ansible_collections/debops/debops'
Found installed collection debops.roles01:2.0.1 at '/Users/alancoding/Documents/repos/collection-dependencies-demo/bug_debops/target/ansible_collections/debops/roles01'
Found installed collection fragmentedpacket.netbox_modules:0.1.4 at '/Users/alancoding/Documents/repos/collection-dependencies-demo/bug_debops/target/ansible_collections/fragmentedpacket/netbox_modules'
Found installed collection alancoding.bug:0.0.1 at '/Users/alancoding/Documents/repos/collection-dependencies-demo/bug_debops/target/ansible_collections/alancoding/bug'
Found installed collection softasap.redis_box:0.1.0 at '/Users/alancoding/Documents/repos/collection-dependencies-demo/bug_debops/target/ansible_collections/softasap/redis_box'
Process install dependency map
Opened /Users/alancoding/.ansible/galaxy_token
Processing requirement collection 'bug_debops/alancoding-bug-0.0.1.tar.gz'
Processing requirement collection 'softasap.redis_box' - as dependency of alancoding.bug
Opened /Users/alancoding/.ansible/galaxy_token
Collection 'softasap.redis_box' obtained from server default https://galaxy.ansible.com/api/
ERROR! Unexpected Exception, this is probably a bug: object of type 'NoneType' has no len()
the full traceback was:

Traceback (most recent call last):
  File "/Users/alancoding/Documents/repos/ansible/bin/ansible-galaxy", line 123, in <module>
    exit_code = cli.run()
  File "/Users/alancoding/Documents/repos/ansible/lib/ansible/cli/galaxy.py", line 456, in run
    context.CLIARGS['func']()
  File "/Users/alancoding/Documents/repos/ansible/lib/ansible/cli/galaxy.py", line 944, in execute_install
    no_deps, force, force_deps)
  File "/Users/alancoding/Documents/repos/ansible/lib/ansible/galaxy/collection.py", line 511, in install_collections
    validate_certs, force, force_deps, no_deps)
  File "/Users/alancoding/Documents/repos/ansible/lib/ansible/galaxy/collection.py", line 955, in _build_dependency_map
    if no_deps or len(dependency_map[collection].dependencies) == 0:
TypeError: object of type 'NoneType' has no len()
make: *** [repro_bug] Error 250
```

It seems that the root of this issue is:

https://github.com/oops-to-devops/redis_box/blob/develop/galaxy.yml

```
cat bug_debops/target/ansible_collections/softasap/redis_box/MANIFEST.json
{
 "collection_info": {
  "description": "wraps sa-redis and installs redis server", 
  "repository": "https://github.com/oops-to-devops/redis_box", 
  "tags": [
   "softasap", 
   "redis"
  ], 
  "dependencies": null, 
  "authors": [
   "Vyacheslav Voronenko"
  ], 
  "issues": "https://github.com/orgs/oops-to-devops/projects/1", 
  "name": "redis_box", 
...
```

Corresponding to:

```yaml
namespace: "softasap"
name: "redis_box"
description: wraps sa-redis and installs redis server
version: 0.2.0
readme: "Readme.md"
authors:
    - "Vyacheslav Voronenko"
dependencies:
license:
    - "MIT"
tags:
    - softasap
    - redis
repository: "https://github.com/oops-to-devops/redis_box"
documentation: "https://github.com/oops-to-devops/mariadb_box/blob/master/README.md"
homepage: "https://www.softasap.com"
issues: "https://github.com/orgs/oops-to-devops/projects/1"
```

I have confirmed that I can build this collection locally.

So Galaxy shouldn't let me build a collection with this entry that errors the dependency processing, or it should handle this case.
import threading
import time
import yaml
from collections import namedtuple
from contextlib import contextmanager
from distutils.version import LooseVersion, StrictVersion
from hashlib import sha256
from io import BytesIO
from yaml.error import YAMLError
try:
    import queue
except ImportError:
    import Queue as queue  
import ansible.constants as C
from ansible.errors import AnsibleError
from ansible.galaxy import get_collections_galaxy_meta_info
from ansible.galaxy.api import CollectionVersionMetadata, GalaxyError
from ansible.galaxy.user_agent import user_agent
from ansible.module_utils import six
from ansible.module_utils._text import to_bytes, to_native, to_text
from ansible.utils.collection_loader import AnsibleCollectionRef
from ansible.utils.display import Display
from ansible.utils.hashing import secure_hash, secure_hash_s
from ansible.module_utils.urls import open_url
urlparse = six.moves.urllib.parse.urlparse
urllib_error = six.moves.urllib.error
display = Display()
MANIFEST_FORMAT = 1
ModifiedContent = namedtuple('ModifiedContent', ['filename', 'expected', 'installed'])
class CollectionRequirement: