Squashed 'lib/' changes from 899d396..1d2b6e6

1d2b6e6 Update Pimple

git-subtree-dir: lib
git-subtree-split: 1d2b6e6d164609dd898abb6706195f5cc8f65b66
Merge commit '5109150b9aa2daff86063f53e5c9226b93d0c01a'
Upgrade code and doc for Pimple 2.0