Image upload feature

This time I merged with upstream first.