Add automatic .env file loading using python-dotenv. This searches
the current working directory and parent directories for a .env file
and loads environment variables from it.
Uses override=True so .env file values take precedence over existing
shell environment variables, which is the expected behavior when
running from a project directory.