Allow infinite subgroups

Now, a subgroup may contain another subgroup.

Per example:

```{
	"locationGroups": [
		{
			"id": 1,
			"name": "AU - NSW",
			"editable": false,
			"subGroups": [2]
		},
		{
			"id": 2,
			"type": "group",
			"name": "AU - QLD",
			"editable": false,
			"subGroups": [3]
		},
		{
			"id": 3,
			"type": "group",
			"name": "AU - SA",
			"editable": false,
			"subGroups": [4]
		},
		{
			"id": 4,
			"type": "group",
			"name": "Metropolitan",
			"editable": true,
			"children": [
				1,
				2,
				3
			]
		}
	],
	"locations": [
		{
			"id": 1,
			"name": "Jetts Neutral Bay"
		},
		{
			"id": 2,
			"name": "Jetts North Sydney",
			"selected": true
		},
		{
			"id": 3,
			"name": "Jetts Valley View"
		}
	]
}```

This example will work.

![capturar](https://cloud.githubusercontent.com/assets/3699061/3940728/1255726c-24f0-11e4-9023-6a8b2b366f2d.PNG)