You get a job at one of these places, and do your downloads at work. Seriously. Like the other posters said, if your town is lit up like this, you can probably get a seriously high-speed consumer-grade connection from your cableco or telco. Unless you're in Boston, where the mayor and Verizon got into a pissing contest and there is no FiOS. 

This is assuming you're in the US - your profile says Seattle WA. 

business-class fiber to the home
For instance, you let the user define the notorious path variable. How do you interpret apppath = C:\Program Files\App?

This looks like a programming language adopted practice to ignore the white spaces and you leave them around the equality mark for readability, but it might be a valid variable value with white space in the application (consider, it is a suffix).

Even keys can contain whitespaces, can't they?

What is the general best practice for my application? If I have:

key-example = value-example


should I interpret the key being "key-example" or "key-example " and the value as being "value-example" or " value-example"?
