initial commit from Tej
fix alignment bug
fix bugs, keep aspect ratio, by Tej
fit to pep8, UTF8 Unix
refactoring
fix aspect ratio and padding problems