LED cube and 200 mA limitation
The current limit you quote is the maximum current that the main chip on the Arduino can tolerate through its 5V or GND pins.

As the chip itself consumes (round numbers demonstrate the theory) say 50mA that leaves 150mA in total that can be sourced or sunk through IO pins.

If you want to supply 20mA per LED (that is actually overkill - you can use considerably less and have very little difference in brightness) that means you can have, illuminated at any one time, (150 / 20 = ) 7.5 LEDs.

To increase the number of LEDs you can drive at once you can:


Reduce the current by increasing the resistor values.
Use multiplexing so that, although it looks like all LEDs are on at once, only a few are actually on at once.
Use external LED driving circuitry (transistors, LED driver shift registers, etc).


All this pertains purely to the current that passes through the main chip itself.  It does not pertain to any current you draw from the 5V or 3.3V pins.  The maximum current through those pins is limited by the voltage regulator they are attached to, and also by the voltage that you are supplying the board with (the higher the voltage, the more voltage has to be dropped, and so the more heat is generated per mA drawn).

The 5V regulator has around 800mA limit when supplied with 6.5V.  If supplied with 12V the limit is considerably less (since it will get too hot and go into thermal shutdown).  You subtract what you are drawing through the chip (maximum 200mA) and that is how much current you have available.

The 3.3V regulator is driven from the 5V regulator, so any current drawn from the 3.3V pin must also be subtracted from what is available on the 5V pin.