Project reorganization & some code cleanup, plus sample app.
Bug fix: Use username and password for FTP operations, if supplied.