RE: Best time to buy
First, find a dealer that is not sticking to MSRP or over, then pick a day near the end of the month, prefferably near the end of the week, especially if the week (and the day) has been a cold, rainy or snowy and thay may beg you to buy it under MSRP. The later in the day the better as well.
Sometimes it helps to go there at least once and say you are looking to buy soon but they don't have what you want on the lot and walk away. Let them call you when they get something closer to what you are looking for.