I love Isometric 3D. There are a couple of ways to transform Model Coordinates to Screen Coordinates. One is to have x and y just as you would for 2D algebra Cartesian coordinate system and then Z is at 45 degrees either positive up to the left and negative down to the right. Or Positive Z up to the right and negative Z down to the left. I usually chose the first. In the first screen coordinate is x2=x3-z3 and y2=y3-z3 then. In the 2nd x2=x3+z3 and y2=y3-z3.
Another way to do this is Have x axis aligned 45 degrees from up to right positive and down to left negative with Z same as above. So x2=x3-z3 and y2=y3-x3-z3 I think.. Someone check me.
I found that a Cube looks funny because the top back right corner aligns too perfectly with the bottom left front corner. So I usually slanted it with some multiplication factor to the x axis calculations.
Removing hidden stuff is easy, you just paint things from back to front. However not very efficient if something behind is totally hidden from view and completely overdrawn.
I'm going to be working on some code and blog post soon dealing with this very thing.