feat(#47, #50): download support