properly implement phylocaml lib
update install script
Structural changes to the design -added Model module

- all phylogenetic inference methods require a model --ML, MP, Kolmo, ... This
  data is not stored at the nodes of the data. This will allow different models
  and information to apply across the tree, store branch lengths for ML, and
  other details/machines for kolmo characters

- the model interface is left very sparse --although incomplete currently--
  since the only module that will be using that information is the nodedata and
  diagnosis modules, the rest are passing the data through the node information.

- the node diagnosis module is not parameterized about a node type. This was
  silly. A diagnosis implies we know more about the structure of the data. This
  was a leaky abstraction in POY because it was silly to have.

- ptopology is not a functor about a topology. It has been turned into a
  data-store of the node and edge data. This may be expanded to more features as
  time progresses, but it should be pretty minimal and left as a simple
  general module to store node and edge data.

- updated readme to reflect changes
added functions; removed some to internal module

- random functions are called from internal module
- added path functions
- preliminary definition of parsed data
Better interface and type definition for type t

- separated alphabet and gap -- silly to get them together
- fixed issues with enum
- renamed some functions for better inference on function
add model to nodedata interface
Added parsimony model
Additional features for PModel and PDiagnosis
need _tags file update for compilation