splitting openflow functionality in 3 sublibraries