factored out Knot.js and moved it from Fort to PropertySet