     ///
     /// Creates a simple binding to a value of a particular type
     ///
-    static func create<TBoundType>(value: TBoundType) -> MutableBound<TBoundType> {
+    public static func create<TBoundType>(value: TBoundType) -> MutableBound<TBoundType> {
         return BoundValue(value: value);
     }
     

    ///
    /// This is something like a drawing function where it can be triggered to update by calling `setNeedsDisplay()`.
    ///
    static func trigger(action: () -> (), causeUpdate: () -> ()) -> (() -> (), Lifetime) {
        let trigger     = Trigger(action: action);
        let lifetime    = trigger.whenChanged(causeUpdate).liveAsLongAs(trigger);
        

    /// Computed bindings can access other bindings and will be automatically invalidated when those
    /// bindings change.
    ///
    public static func computed<TBoundType>(compute: () -> TBoundType) -> Bound<TBoundType> {
        return BoundComputable(compute: compute);
    }
    
