* subgraph copy from
* WIP
* cached members
* Change all usage of id tensor to the new Index object; remove set device in DGLGraph;
* subgraph merge API tested
* add dict type reduced msg test
* subgraph
* more test cases
* WIP
* new FrameRef and test
* separate nx init code
* WIP
* subgraph code and test
* line graph code and test
* adding new test for adding new features on line graphs
* no backtracking line graph
* fix inplace relabel
* model code for generative graphs
* batched version for dynamic graph generation using padding
* renaming function train back to forward
* remove old util function for padding DGMG
* override networkx clear to reset state, add dgl.nn
* Dynamic graph without batching
* use relative import path
* load dataset, pad batch
* bug fix
* experimental batch and unbatch
* dgmg batched version
* minor tweak
* move preprocessing padding into data loading
* batch graph test code
* minor
* batched graph class and test cases
* make dgl.nn.gcn a simple layer plus minor fix
* update dgmg model
* test forward using attribute field
* use frame append, minor changes
* moving networkx operations out of forward
* revert some changes
* remove structural immutability check
* fix edge list order problem in cached graph.
* minor fix
* fix bug in edge iter
* SPMV works
* gcn spmv on CPU
* change gcn style
* fix cached graph performance; fixed gcn dataset bug
* reorg dir
* non-batch spmv; partial update problem with shape change
* fix reorder problem; finish gcn-batch impl
* pop API
* GPU context
* Remove name args in register/sendto/update_edge/recvfrom
* Support anonymous repr
* Test anonymous edge repr
* Test node states with both anonymous and explicit reprs
* add reduce_msg related api to dgl graph
* add reduce_sum, switch backend from numpy to pytorch
* update gat gcn to use reduce msg api
* remove reduce_sum
* add built-in reduce functions