basic ajax cart, much more flexible, will continue to work on it