Default constructor for gaussians
Node conversions with gaussians as the data type

Mostly just to check that all the mucking about with types works.
Associate Gaussian data with a tree.

Early days, but the idea is there.
Export a tree of *pairs* of gaussians; that's what we actually want.
Reverse order of initialisation of branch_pair

Now is rootward, tipward (so moving forward in time) which is
more intuitive to me at least.
Basic BM calculations work.
Wrap a tree and model together to get a calculator.

Just the simplest case handled so far, and no generic export.
First version of a discrete trait type

This is just for Mk type models -- not xxSSE models that also require
extinction.  There are some changes coming to this though; at the moment
the data type can be resized but I think it makes most sense if it is not
resizable.  That requires some tweaking of the way that default
constructors are used throughout the model code.
Helper indexing method for discrete types.
Helper functions implementing bits of Mk

These are just useful for comparison and not as part of forest
Basic Mk2 model.

Forward and backward calculations done, but no tree integration yet
Better R -> Gaussian translation, using a more generic approach
Some basic bounds checking
Trim discrete and gaussian constructors.

New static methods mean that some constructors no longer useful.
Start on the process of simplifying node copying
Remove node_wrapper code

This basically undoes a7114005ff8dcf07eb7ca3834eb8cc14cf6c51e4

The approach I'd taken there does not look like it will naturally
work with Rcpp's as/wrap (which won't magically work recursively)
so it is not sufficient to have the ability to convert nodes to
automatically convert trees.  So the conversions will be more
explicit.
Remove "duplicate_node" in favour of using node::copy_structure

This commit streamlines the tree/node duplication code considerably.
The testing wrapper functions have been removed, and hopefully
this can all be made to work as the number of different tree
types grows.
Baby steps towards plotting code: coordinate extraction from a tree.

Agrees with ape.  No actual plotting yet.
Basic grid-based plotting.

Trees in various orientations (left/right/up/down/circle), with and
without node/tip labels.  Very limited support for non-scalar graphical
parameters yet, but the most basic plotting code is there.
Classify a tree by membership of a node.

Steps towards the MEDUSA classification algorithm.  Will be used
by plotting code to highlight clades, etc.