Q:

How do you set up selenium tests to run nightly, and where do you store the files?

I understand this question may look subjective, so I will do my best to make this more specific.
I have created a suite of Selenium TestCases using Python. I want these tests to run each night, against a particular URL. 
Where is the best place to store a large number of Selenium tests? And are there any tools which I can use to manage these tests, so that they run each evening?

A:

Where is the best place to store a large number of Selenium tests?

The ideal place for your selenium tests would be a source code repository, like git or mercurial. 
You don't have to host the repository yourself and can use third-party services, code hosting solutions like github or bitbucket.

And are there any tools which I can use to manage these tests, so that they run each evening?

The ideal place to run these tests would be a continuous integration (CI) server, which will aside from scheduling, solve the test result reporting problem, notifications etc. There is a number of available CI tools, like Jenkins or Bamboo.
There are also modern CI and delivery third-party services like Travis CI or Circle CI.
Also look into cross-browser and cross-platform services like Browser Stack and Sauce Labs. They may act as a remote selenium server for your tests.

A:

Where is the best place to store a large number of Selenium tests?

In the project which they are testing. Always version control tests with the production code, or you will have a lot of extra pain for no gain.

[A]re there any tools which I can use to manage these tests, so that they run each evening?

A crontab or Jenkins timed job will do the trick, but I would very much advise to configure it to run your tests on every commit rather than every night.

