Initial v1.0
I'm tired :(
support all orientations

top-down, bottom-up, from-left-to-right and from-right-to-left.
Merge remote-tracking branch 'origin/v1.0'