added diskuasge() - calculates diskusage of a directory
diskusage() - added a way to check files
fixed pylint violations
allow for git HTTP Basic Auth when using https://

- Overview

This commit adds support for HTTP Basic Auth user and passwords when cloning
a git repository. Restrictions are placed to ensure Basic Auth is only used
when accessing remote repositories over HTTPS.

Support for updating remotes is included for user/password/uri changes.

Submodule support is not maintained, as those are outside the scope of my
initial need :)

This has a terrific tendency to leak credentials in the clear due to logging
in the cmd.run set of tools.

- Motivation

Specifically, GitHub's HTTPS access layer has some niceties not available when
using the SSH protocol. See https://help.github.com/articles/which-remote-url-should-i-use/#cloning-with-https-recommended

It is nice to enforce read-only access to repositories from remote hosts.

Also, it is a lot cleaner to drop Passwords/Security Tokens in configurations
rather than PEM form private keys.
lint fixups
fix test_valid_docs failures

04:47:36 ======================================================================
04:47:36 ERROR [0.371s]: test_valid_docs (integration.modules.sysmod.SysModuleTest)
04:47:36 ----------------------------------------------------------------------
04:47:36 Traceback (most recent call last):
04:47:36   File "/testing/tests/integration/modules/sysmod.py", line 85, in test_valid_docs
04:47:36     '\n'.join(['  - {0}'.format(f) for f in sorted(noexample)]),
04:47:36 AssertionError: There are some functions which do not have a docstring or do not have an example:
04:47:36 No docstring:
04:47:36
04:47:36 No example:
04:47:36   - git.urlparse
04:47:36   - git.urlunparse
04:47:36
04:47:36
04:47:36 ----------------------------------------------------------------------
04:47:36 Ran 208 tests in 511.923s
04:47:36
04:47:36 FAILED (errors=1, skipped=34)
Bugfix git_pillar (__env__ related)

Fixes bug that shows up when caches are cleared.
Use dict.get in stead of __getitem__ to catch missing values
in opts.
Fixes #18587, this considers nofail as a invisible mount option. This should fix mounts that always remount every run.
Key name was changed in version 2 of the digital ocean API
Merge pull request #18589 from dmyerscough/fix-digital-ocean-delete

Key name was changed in version 2 of the digital ocean API
Merge pull request #18507 from theksk/file-diskusage

File diskusage
Merge pull request #18560 from ewdurbin/git_https_basic_auth

allow for git HTTP Basic Auth when using https://
Merge pull request #18574 from keesbos/bugfix-__env__

Bugfix git_pillar (__env__ related)
Merge pull request #18588 from kormoc/bug_18587

Fixes #18587, this considers nofail as a invisible mount option. This sh...