move the rendering to JS
resizing landscape mode properly.
landscape mostly working.