Change Log:
v0.5.2 - Features & bug fixes
 New Features:
  - network.extract() function now truncates the observation spells of the net.obs.period attribute (if it is present)
  - the networkDynamic() converter function for lists of networks will now convert attributes of the panel networks into TEA attributes of the dynamic network. But vertex attributes of first net in list no longer copied in as static attributes (static attributes will be copied from base.net)
  - added get.networks() function that returns a list of network objects sampled from a networkDynamic
  - added functions to support defining optional 'persistent ids' attributes for vertices and edges that will remain invariant through network extractions: get.vertex.id, get.vertex.pid, for translating between normal (positional) vertex ids and vertex pids, get.edge.id, get.edge.pid do the same for edges, vertex.pid.check, edge.pid.check to verify pid uniqueness, and initialize.pids provides some options for defining the pids.  Overrides add.edges, add.edge, add vertices from network package to allow passing in new ids when creating new network elements.
  - added reconcile.vertex.activity and reconcile.edge.activity functions with various modes for modifying the activity of one set of elements to be consistent with the other
  - support for bipartite networks with size-zero first partition (bipartite=0)
  - implemented 'earliest' and 'latest' aggregation rules for processing attribute queries that might return multiple values
  - added ability to activate multiple spells per vertex by adding duplicate elements to the v elment of activate.vertices
  - added ability for activate.edges to activate multiple spells per edge by repeating values of e argument
  - modified is.active function to give warning if an eid is specified that corresponds to a deleted edge, meaning that the indicies returned will not correspond to indices of the e parameter and valid.eids should be used
  
 Bugs fixed:
  - fixed bug in spells.overlap() when considering null spell (Inf,Inf) and some point queries.
  - dramatic speed improvements to spell list importing via the networkDynamic() function
  - fixed bug in network.edgecount.active and network.naedgecount.active when network has deleted edges (such as ergm sim output). 
  - fixed bug in activate.edge.attributes that could swap edge values in some cases when using e argument.

v0.4.1 - bug fixes
  - fixed problem in delete spell function that would give errors on some deactivate.vertices calls
  - fixed bug in get.vertex.activity(as.spellList=TRUE) when spell activity had been deleted or removed
  - fixed bug in get.change.times that prevented it from checking changes times of TEAs
v0.4 - new functionality and bug fixes
  - networkDynamic() function supports conversion from various tabular schemas (spell-edgelists, toggles, lists of networks)
  - added ability to attach Temporally Extended Attributes (TEAs) to network elements to store and manipulate changing attributes of vertices, edges and networks.
  - specification of an (optional) net.obs.period attribute to store meta-information about the network's period of observation/simulation
  - added network.collapse() function (and %k% operator) which complements network.extract() for extracting an appropriate static network from a dynamicNetwork object
  - added support for networks with zero vertices (feature added in network)
  - addition of as.network.networkDynamic and as.networkDynamic.network to remove and set networkDynamic class on network objects. 
  - added package dependency on statnet.commons for startup message functionality
  - added package suggests to testthat to support more efficient writing of unit tests. 
  - extensive and updated package vignette / tutorial: browseVignettes(package='networkDynamic')
  - numerous bug fixes and documentation improvements

v0.3 - bug fixes and new functionality
	- network.dynamic.check now optionally reports what is wrong with an element
	- new functions get.vertex.activity and get.edge.activity to return activity matrices of elements
	- new function get.change.times to report timepoints at which network structure changes
	- new convienince function add.edges.active and add.vertices.active which add and activate elements in a single call
	- new delete.edge.activity and delete.vertex.activity functions to remove timing information from elements. 
	- activate.* and deactivate.* methods now modify class of network argument in place. 
	- speed and stability improvements to many functions
	- additional examples in help files
	- dactivate.vertices function now includes option to deactivate incident edges

v0.1-0 - Lots of rebuilding
 - added namespaces
 - moved duration.matrix script from ergm code, added some C code
 - update to package loading
 - renamed network.crossection to network.extract
 - ndConverter functions for translating various forms of relational information into networkDynamic format
 - addition of 'at' and 'length' arguments for most temporal methods
 - rebuilt code with increased argument checking for most spell related methods
 - added test cases for most methods
 - some changes in spec for spell handling
 - bug fixes in spell handling for interval queries
 - bug fix to network.dynamic.check
 - added dynamic network datasets of Newcomb's fraternities, Lin Freeman's Windsurfers and McFarland's classroom networks
 - filename of build now includes version information

v0.1-1 - Internal Bugfix Release, w/Minor New Function
  New Functions:
    - network.dynamic.check: Check dynamic consistency of network elements.
  Bug Fixes:
    - Removed tracer statements.  [Submitted by PNK]
    - is.active could fail if passed no edges to check.  [Submitted by PNK]
    - is.active could fail if passed infinite arguments in some cases.

v0.1 - Initial Internal Release
