add autolayout

should resolve #20