Add kwargs support for memoize

Happy to update docs 

TODO: check performance impact of using `inspect.getcallargs` (it on its own does fallbacks depending how signature looks like)

@Suor should I add feature proposal Issue on GH ?
@Suor decided to use `getcallargs` always for reliability (also inner implementation is build on fallbacks so - will do benchmark it). I am wondering what you think about it ? 

Alternatively `memoize` could be a parametrised decorator with default `key` function like https://gist.github.com/lukmdo/600fe46d05a046a2ab0a