make RatioNode implementation more similar to RatioNodeWithCanvas, ie with inner type MoleculesNode
replace RatioNodeWithCanvas with strategy pattern in RatioNode