Add in-place caching attribute and constructor to Memoizer

For in-place caching, the current implementation of Memoizer requires to set
the directory as the root path. This is not intuitive and requires a priori
knowledge about the setId file especially on Windows platforms. This commit
proposes to store in-place caching as a boolean attribute which can override
directory.
Modify getMemoFile() logic to handle and check in-place caching
Add logic to create temporary file in MemoizerTest.setUp
Extend Memoizer tests to cover directory existence/permissions cases
Do not run setWritable(false) tests on Windows platforms
Merge pull request #1292 from sbesson/memoizer_inplace

Memoizer: improve usability of in-place caching