Code style, only one class, optional scaling and edge fade out
edge fade out works for markers of different sizes
flake ok
corrected some bugs, test pass