<!-- Love localstack? Please consider supporting our collective:
👉  https://opencollective.com/localstack/donate -->

# Type of request: This is a ...

[X] bug report
[ ] feature request

# Detailed description

Trying to start localstack (0.11.6) that's been downloaded on a Windows 10 machine with the help of pip. In fact, trying to run just: `localstack`, which should print the usage, results in the same output.

Output from a PowerShell prompt:

```
P:\>python C:\Users\user\AppData\Local\Programs\Python\Python39\Scripts\\localstack start
'uname' is not recognized as an internal or external command,
operable program or batch file.
Traceback (most recent call last):
  File "C:\Users\user\AppData\Local\Programs\Python\Python39\Scripts\localstack", line 18, in <module>
    cli.main()
  File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\localstack\utils\cli.py", line 130, in main
    bootstrap.load_plugins(scope=bootstrap.PLUGIN_SCOPE_COMMANDS)
  File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\localstack\utils\analytics\profiler.py", line 153, in wrapped
    from localstack.utils.common import now_utc
  File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\localstack\utils\common.py", line 4, in <module>
    import pwd
ModuleNotFoundError: No module named 'pwd'
```

From my understanding windows might not be compatible with the `pwd` module.

Official Python docs:

> This module provides access to the Unix user account and password database. It is available on all Unix versions.

But this is just guesswork...

---

I've tried with lower version of localstack (0.11.2 and 0.11.5) on the same setup, and they work just fine.

### Versions

* Python 3.9.0
* pip 20.2.3
* Docker version 19.03.13, build 4484c46d9d
* Windows 10 Enterprise, Version 1809, OS build 17763.1457

## Expected behavior

Localstack starts

## Actual behavior

Localstack does not start

# Steps to reproduce

## Command used to start LocalStack

`localstack start`

## Client code (AWS SDK code snippet, or sequence of "awslocal" commands)

none

self._stdout = self.LogStreamIO()
        self._stderr = self.LogStreamIO()
    def __enter__(self):
        
        from werkzeug.local import LocalProxy
        ident = self._ident()
        if ident not in self.CONTEXTS_BY_THREAD:
            self.CONTEXTS_BY_THREAD[ident] = self
            self._set(LocalProxy(self._proxy(sys.stdout, 'stdout')),
                      LocalProxy(self._proxy(sys.stderr, 'stderr')),
                      LocalProxy(self._proxy(sys.__stdout__, 'stdout')),
                      LocalProxy(self._proxy(sys.__stderr__, 'stderr')))
        return self
    def __exit__(self, type, value, traceback):
        ident = self._ident()
        removed = self.CONTEXTS_BY_THREAD.pop(ident, None)
        if not self.CONTEXTS_BY_THREAD:
            
            self._set(self.orig_stdout, self.orig_stderr, self.orig___stdout, self.orig___stderr)
        
        removed._stdout.flush()
        removed._stderr.flush()
        out = removed._stdout.getvalue()
        err = removed._stderr.getvalue()
        
        removed._stdout.close()
        removed._stderr.close()
        removed._stdout = out
        removed._stderr = err
    def _set(self, out, err, __out, __err):