Issue39

Contains a partial fix for issue 36 (tidying up rules) and a clean up of code to ensure both that issue 38 can be properly fixed and that issue 39 is cleaned up (though not fully fixed - some rule problems are resolved, and the restriction is corrected to the OpenStack model of "deny as default" consistently throughout, with changing to "deny or accept as default" left as a future enhancement).