basic client stuff working