added setup.py and some dep checking/auto install features