Simplify the version bump process. ### Description

Simplify the version bump process.

- Use substitution hook in docs to update CDN URL.
  - In `dev` or `prerelease` versions, it will point to `dev` url
  - In `stable` versions, it will point it `vX.Y.Z` url
- Introduce a version bump script `tools/bump_version.py`.


~- Use `bump2version` to bump Python versions (continuing from #2460)~
~- Use `npm version` to bump JS versions~
~- Update `run_docker` script to use latest deployed pre-built docker image when `--pre-built` option is specified.~

### Checklists

- [x] Add new / update outdated documentation

package:
  name: newick
  version: 1.3.2
source:
  url: https://files.pythonhosted.org/packages/95/11/4db3f40c604b6cb1a574cbf06f66e217af03835385cca1605530d58cacc7/newick-1.3.2-py2.py3-none-any.whl
  sha256: 6fced6f48b045225ccc4ee4cdbfe78c42b538274f1b866c6add349cf02752fdd
test:
  imports:
    - newick
about:
  home: https://github.com/dlce-eva/python-newick
  PyPI: https://pypi.org/project/newick
  summary: A python module to read and write the Newick format
  license: Apache 2

package:
  name: newick
  version: 1.3.2
source:
  url: https://files.pythonhosted.org/packages/95/11/4db3f40c604b6cb1a574cbf06f66e217af03835385cca1605530d58cacc7/newick-1.3.2-py2.py3-none-any.whl
  sha256: 6fced6f48b045225ccc4ee4cdbfe78c42b538274f1b866c6add349cf02752fdd
test:
  imports:
    - newick
about:
  home: https://github.com/dlce-eva/python-newick
  PyPI: https://pypi.org/project/newick
  summary: A python module to read and write the Newick format
  license: Apache 2
