I think it's an interesting question - even if I wouldn't use Mathematica for this purpose. I'm assuming you're not interested so much in the interactive drawing tools (you can group things together, but there's no numerical interactivity like you'd find in a CAD program). Sticking with 2D to start with:
chair = {Gray, Rectangle[{0, 0}, {.5, .5}]};
table = {Gray, Rectangle[{0, 0}, {1, 1}]};
bed = {Gray, Rectangle[{0, 0}, {2, 1}]};
carpet = Inset[
ArrayPlot[
CellularAutomaton[{14, {2, 1}, {1, 1}}, {{{1}}, 0}, {{{30}}}],
ColorFunction -> "LakeColors"]];
room = {EdgeForm[Black], FaceForm[None], Rectangle[{0, 0}, {7, 5}]};
Graphics[
{room,
Translate[carpet, {0, 0}],
Translate[Rotate[chair, Pi], {6.25, 4}],
Translate[Rotate[table, Pi/2], {6, 2.5}],
Translate[bed, {0.1, 3.9}]
},
Frame -> True]
If you feel the urge to re-arrange things manually from here, then use the commands on the Graphics menu.
It's possible to add Locators and Sliders to enable some interactivity:
Manipulate[
Graphics[
{room,
Translate[carpet, {0, 0}],
Translate[Rotate[chair, rot1], loc1],
Translate[Rotate[table, rot2], loc2],
Translate[bed, {0.1, 3.9}]
},
Frame -> True],
{{rot1, 0, "Orientation of chair"}, 0, 2 Pi},
{{rot2, 0, "Orientation of table"}, 0, 2 Pi},
{{loc1, {0, 0}}, Locator, Appearance -> None},
{{loc2, {0, 0}}, Locator, Appearance -> None}]
you can drag the chair and table around now. It's not looking promising though.