added args to custom functions

added while
removed lamdas (now lists do the same)
some parsing changes
some eval changes (fixed quotes)