basic functionality working now