Allow specifying the pinning version with 'opam pin add'

Closes #1799 Also cleans up pinned package update a bit