bhkBreakableConstraint update

Added structure of bhkBreakableConstraint. It seems that it is (and also bhkMalleableConstraint) some kind of "parent descriptor" for behavior for their "children" constraint which must be inserted within it. This inserted constraint in named "Sub Constraint", its type is determined by "Constraint Type" integer value. After this integer there is inserted complete constraint - one of allowed "common" constraints. And then there are inserted parameters specific for parent constrains (for example breakable one has "Threshold" and "Remove if Broken"). From vanilla nifs it seems that this "Sub Constraint" has always set its "Num Entities" to 2 but also both references to "Entities" are set to None. I think that this is probably because the relation between two rigid bodies this constraint is affecting is determined earlier - in "Entities" of parent constraint (bhkBreakableConstraint or bhkMalleableConstraint) and therefore it is not necessary (or it is forbidden?) to set references to entities also in "Sub Constraint".
added PrismaticConstraint to SubConstraints

1. Added PrismaticConstraint to list of available constraints in SubConstraint
2. Previously added enum "ConstraintType" renamed to "hkConstraintType"
Merge pull request #36 from ttl269/bhkBreakableConstraint-update

bhkBreakableConstraint update