project revised. now with nicer interface.