added dist to gitignore
done a lot of rework
changed gitignore
modified a lot of things