USB is messy, depending on the power supply of the computer, the voltage could be as high as 5.5-5.8v but it could also be much lower than 5v, like 4.8v...
There are switching regulator chips which can lower a voltage (buck regulators) , raise the voltage (boost) or do both (SEPIC mode, for example). SEPIC is a bit more complex, with more components, so it's probably less desirable for simple circuits.
Some people resort to a simple trick to simplify their designs... they use a linear regulator with very low voltage drop to make sure the voltage doesn't go above 5v. For example, a regulator like
MCP1824 can output up to 300mA with a maximum voltage drop of 0.2v, and much lower voltage drop at lower currents, something like 50mV at 100mA.
So if the usb voltage is 5.3v for example, the regulator will output 5v. If the usb voltage is below 5v, the regulator will output basically the same voltage, minus a few mV, which wouldn't normally be a problem because a lot of microcontrollers can work with 4.7-5v, they don't really have to be exactly 5v.
However, if you really want exactly 5v, this makes it easier to use a simpler boost regulator only to raise the 4.xx - 5v to something like 5-5.1v, therefore all would be good in the world. See chips like LT1307 or LT1308 and there's other chips that are much cheaper which can do the same thing.. i only mention the above because I used them. You could use even jellybean chips like MC34063 to boost voltage, but such cheap ICs are really inefficient and require large sized inductors to work.
As for battery charging, there are very cheap and easy to use lipo battery charging chips, like the microchip MCP73812 for example :
http://www.microchip.com/wwwproducts/Devices.aspx?product=MCP73812It can take up to 7v from usb port, and outputs regulated 4.2v to the battery and constantly checks it to make sure it isn't overcharged and so on, read the datasheet.
You can use power switching ICs to switch power of your circuit between usb and battery, or you can make your own circuits using diodes or mosfets. A good example of some switching chip is LTC4412 :
http://www.linear.com/product/LTC4412 (but again Linear Technology chips are expensive, there are others from cheaper manufacturers)
It's possible to use something as simple as two schottky diodes to switch between sources ... whatever voltage is higher wins and goes further into the circuit, so with usb cable unplugged you only have 4.2v or something from battery but when you plug the usb cable the 5v is above 4.2v so that takes over. Power selector chips are just more efficient than diodes, as it's explained in that Linear chip's page.
As for the -19v, again, there are switching regulator chips that can be configured in inverting mode... the cheap MC34063 can do it for example.