move validator, skip plot tests if matplotlib not present

add extern __init__.py