Bugs with undo/redo and selection

This pull request fixes several issues inside of ComponentsCommands.js:

**1. Elements affected by undo/redo should become selected.**
Steps to reproduce:
1. Create a text box.
2. Move it somewhere.
3. Unselect it.
4. Undo.

*Actual result:* 
Textbox is moved back, but not selected.

*Expected result:*
Textbock is moved back AND selected.


**2. When undoing delete command, multiple elements might become selected**
Steps to reproduce:
1. Create 2 textboxes.
2. Select one of them and delete it.
3. Select second text box.
4. Undo.

*Actual result:*
Both textboxes are selected.

*Expected:*
Only first one is selected (the one which was un-removed).


**3. I've also did a little bit of refactoring inside the file:**
- Fixed indentation.
- Changed order of commands to be a little more organized.
- Explicitly defined MoveCommand variable.