refactor customizer and PM metadata classes
fix unit tests
refactor BnColumnPropertyEditor