Bug fix in MPI_Node::Truncate()

- During truncate the parent vectors were not updated.

Other minor changes:
- Profile counts flop, memory even when not enabled.
- Profile::[Add_FLOP,Add_MEM,Enable] return original value.
- Move node_id to TreeNode from FMM_Node.
- In Tree, memgr initialized with zero size to reduce memory usage.
- Remove MPI_Comm_dup from MPI_Tree. We assume user will not free the
  communicator until after the tree is destroyed.