the last refactor, ready for add the 'server' feature

rename InputFolder to VirtualFolder