**********************************************************************************
**********************************************************************************
** 
**  WISHLIST: 2008-02-16 for xts
**
**********************************************************************************
**********************************************************************************


* plot.xts method - handle x-index values as dates similar to ticks in quantmod
    follow 'zoo' convention mostly - e.g.

      plot(x, y = NULL, screens, plot.type,
             panel = lines, xlab = "Index", ylab = NULL, main = NULL,
             xlim = NULL, ylim = NULL, xy.labels = FALSE, xy.lines = NULL,
             oma = c(6, 0, 5, 0), mar = c(0, 5.1, 0, 2.1), 
             col = 1, lty = 1, pch = 1, type = "l", nc, widths = 1, heights = 1, ...)

      ## S3 method for class 'zoo':
      lines(x, y = NULL, type = "l", ...)

      ## S3 method for class 'zoo':
      points(x, y = NULL, type = "p", ...)
  
  AND allow for full plot/par customization - mostly focus on timeseries data ...
  [update 2/16/2008: partially added, still needs work, but working -jar]
      

* write 'as.ts.xts' method: handle NAs correctly


* 'Ops.xts' method


* An xtsAlign method to align series by date. - match monthly data to first/last...


* merge.xts


* indexClass and index<- should warn if non-unique index values are applied


* add zooreg as a handled class, possibly mts if necessary


* Write more test cases to better 'test' the functions, specifically tests
  to check on xts class persistence
  Tests to incorporate:
  
    for all data classes: 'zoo','ts','timeSeries','its','irts','matrix','data.frame'
      as.xts
      reclass
    
    indexClass<- for 'Date','timeDate','POSIXct','chron','dates','yearmon','yearqtr'
    indexClass<- change then  =>  reclass

   *`timeSeries` has internal issues when subsetting.  charvec loses atomic and attributes
   *`ts` converts to a numeric object if subset by date

   [update 2/16/2008: most of the above have been implemented]


* [.xts<- replacement method


* cbind/rbind xts methods required to maintain xts object


* aggregate.xts (dispatch to NextMethod or call aggregate.zoo and
  re 'xts' results


* as.data.frame.xts, as.matrix.xts
  as.zoo.xts, as.its.xts,
  as.timeSeries.xts, as.irts.xts

  above should handle clean coercion to the requested classes,
  so that it would be possible to do the following:
    x # a timeSeries object
    identical(as.timeSeries(as.xts(x)),x)

     -- or --

    as.ts(as.xts(x))

  possibly rely on zoo methods instead, though may be able to do better in
  certain cases. timeSeries may be the tough one - as it has unique attributes
  automatically generated, that *should* just be copied.

  'as.ts' is a bad idea to rewrite.  The current method works great
  (as.ts.default or as.ts.zoo???)

  The most compelling reason is to allow for temporary conversion
  to class type required by particular functions - esp. functions
  in PerformanceAnalytics and the Rmetrics bundle, though a reliable
  coversion to 'ts' for many base functions would be also useful

  essentially a mechanism to allow for the same conversion as.* is
  used for elsewhere.

* indexClass and indexClass<- methods allow for changing index class,
  at present only simple conversions work, as no additional args
  are passed to as.POSIXct,etc methods.  Need to fix this.

  Additionally indexing to different formats needs to be done:

      as.yearmon.xts, as.yearqtr.xts,
      as.timeDate.xts, as.POSIXct.xts,
      as.chron.xts, as.dates.xts, as.times.xts,
      as.Date.xts

* look into chron, dates (& yearmon, yearqtr)
  -- this can't be extensible, as we couldn't test for time nature...
  -- but we *should* cover all *known* date handling in R at any given time
  [done 2/16/2008 - jar]

* create a matrix of time-series types and attributes for comparison
  documentation

* write an introductory vignette for 'xts', possibly an article for R news
  [in progress 2/16/2008 - jar]

* web page on R-Forge

* a generic extension function ?extend.xts?
