date_range() alert user when using periods and end args?
Hi all,

I am using date_range() and noticed that  if the arguments start, end and period are all passed, the _period_ argument essentially overrides _end_. 

For example, consider the following index created using start and end:

```
start = datetime(2011, 1, 1, 5, 3, 40)
end = datetime(2011, 1, 1, 8, 9, 40)

tmanual=date_range(start, end, freq='s')

>>>[2011-01-01 05:03:40, ..., 2011-01-01 08:09:40]
```

An alternative is to provide a start time,  and then a number of periods.

```
tperiods=date_range(start, freq='s', periods=10)

>>> [2011-01-01 05:03:40, ..., 2011-01-01 05:03:49]
```

The weird part is when I pass all three arguments (start, end and periods).  It actually defers to the output of tperiods.

```
tweird=date_range(start, end, freq='s', period=10)

>>>[2011-01-01 05:03:40, ..., 2011-01-01 05:03:49]
```

Thus, there is no difference between the following calls:

```
date_range(start, freq='s', periods=10)
date_range(start, end, freq='s', period=10)
```

IMO, I think this should at least yield an error or a flag.  My preferred behavior would actually yield a DatetimeIndex that runs from start to end, sampling 10 times over the entire array of second-spaced data.   One would be effectively defining a step size for sampling of length (start-end)/period, where start-end is an array spaced at second intervals.

What do you guys think?  Here's an example of how the function could work:

```
def date_range(...):
........
if start and end and period:
    tindex=date_range(start, end, freq=freq)

return tindex[0 :: period]
```
