Current mobile robots (mobots) have extremely limited usefulness in real-world applications, due primarily to low capability and low reliability. Current mobots cannot navigate in environments which have not been extensively engineered to be mobot-friendly; they are also incapable of performing useful duties at their destination. They often have poorly designed hardware and primitive software-development environments, making the development of new mobile robot protocols slow and difficult. In this thesis, we describe three ways to make mobile robots more usable. We present algorithms for mobile robot self-localization, a design paradigm for reliable mobile robots, and protocols for cooperative large-scale manip- ulation by mobile rob...