[Feature] Allow Dynamic Library Target
### Proposal
To be able to specify in the `.nimble` file to make a dll instead of exe for certain targets.

#### example
We have the following nimble script

```nim
author = "Anonymous"
version = "1.0.0"
description = ""
license = "MIT"
srcDir = "src"
bin = @["BinaryExecutable"]
dynlib = @["MyDynamicLib"]  # Here
dynlibOptions = "--passL:-static --threads:on" # Command Line Options while building a library.

requires "nim >= 1.6.0"
```

Now, when we do a `nimble build`, it would create binary targets as well as dynamic library targets. 

### Current Status of dynamic library
Currently dynamic libraries are built manually by nim command as follows:

```
nim c --app:lib --out:MyModule.dll --threads:on --passL:-static src/MyModule.nim
```

### Other proposed features linked to this (but not part of this yet)
* After this, we can also think about adding support for linking binary executables with dll.

### Full Disclosure
I have just started learning nim a day ago and I am not expert enough in `nim` or `c` at all.