alpha version

almost all done. a few bugs might appear. still working on a couple of
improvements.