Git Add uninstall flag @bootstrap.sh

Add uninstall section @bootstrap.sh
TODO:
getopts for bash flag handling
refactor some of the script flows

ready to release v1.3
Mod vim.vundle -> vim_vundle
Add Vundle install func @bootstrap.sh

Ref script flow
Com move function to first, then add main flow, like a typle c program

TODO
make -f and -d work, then release v1.3
Mod vundle path to absolute
Add -f -d features @bootstrap.sh

Still not perfect

ideal:
1. can append files directly after ./bootstrap.sh, works as if -f
2. As long as -h or --help is seen, print help
   As long as -V or --version is seen, print version
3. -f and -d can handle multiple files until the next flag
4. all flags' position should be insensitive, except from the fist position

./bootstrap.sh file1 file2 file3
    => install file1 file2 file3

./bootstrap.sh -d file1 file2 file3
    => uninstall file1 file2 file3

./bootstrap.sh file1 -d file2 file3
    => install file1; uninstall file2 file3

./bootstrap.sh file1 -d file2 file3 -f file4
    => install file1; uninstall file2 file3; install file4

typical usage:

./bootstrap.sh file1 --vundle -p
    => install file1; install vundle; dry-run

eg.
./bootstrap.sh --pathogen file1 file2 file3
    => error, --pathogen shouldn't have argument

./bootstrap.sh --help file1 file2 file3
    => print help

./bootstrap.sh file1 --help file2 file3
    => print help

./bootstrap.sh file1 file2 file3 -p
    => print dry run install file1 file2 file3

./bootstrap.sh -p file1 file2 file3
    => error, -p shouldn't have argument

./bootstrap.sh file1 file2 -p file3
    => error, -p shouldn't have argument

./bootstrap.sh -p -f file1 file2 file3
    => print dry run install file1 file2 file3

./bootstrap.sh [files] [-f|-d] files [--pathogen|--vundle] [-h] [-V] [--uninstall] [--debug]
Mod usage; _Ver 1.3

Modify usage, see the last commit msg for details
Release v1.3

new usage will be implemented in v1.4
REN @bootstrap.sh -> @dot
Add leading filename as a default -f flag

Ready to release v1.4

Bugs:
    when install, backup function has some problems
    eventually all these symlinks will end up in .dotfiles_old
    But I only want the initial files in .dotfiles_old, need to figure out the
    logic flow here

    This leads to the problem of I will need to double uninstall to clean uninstall

TODO:
    -f/-d flag will enable multiple arguments
_Ver 1.4