UserContext broken with Nim 1.6
Example taken from [docs](https://planety.github.io/prologue/extendctx/):
```nim
import prologue

type
  UserContext = ref object of Context
    data: int

# initialize data
method extend(ctx: UserContext) =
  ctx.data = 999

proc hello*(ctx: UserContext) {.async.} =
  doAssert ctx.data == 999
  resp "<h1>Hello, Prologue!</h1>"

var app = newApp()
app.get("/", hello)
app.run(UserContext)
```

Error:
```shell
contextTest.nim(16, 4) Error: type mismatch: got <Prologue, string, proc (ctx: UserContext): Future[system.void]{.gcsafe, locks: <unknown>.}>
but expected one of:
proc get(app: Prologue; route: string; handler: HandlerAsync; name = "";
         middlewares: openArray[HandlerAsync] = @[])
  first type mismatch at position: 3
  required type for handler: HandlerAsync
  but expression 'hello' is of type: proc (ctx: UserContext): Future[system.void]{.gcsafe, locks: <unknown>.}
5 other mismatching symbols have been suppressed; compile with --showAllMismatches:on to see them

expression: get(app, "/", hello)
```