Sql3StubSemanticData to load SubSemanticData on request

- Add '__sob' as datatype to identify subobjects
- Add `Sql3StubSemanticData::getSubSemanticData`
- Add `Sql3StubSemanticData::hasSubSemanticData`
Merge pull request #366 from SemanticMediaWiki/store-sobj

Sql3StubSemanticData to load SubSemanticData on request
Update RELEASE-NOTES.md

[skip ci]
Update BrowseBySubject to use #366

- BrowseBySubject to rely on Store::getSubSemanticData
- Modify BrowseBySubjectTest to use \PHPUnit_Framework_TestCase
- Add BrowseBySubjectApiDBIntegrationTest
Merge pull request #380 from SemanticMediaWiki/api-browse-subject

Update BrowseBySubject to use #366
Add AdvancedQueryForResultLookupDBIntegrationTest
Merge pull request #381 from SemanticMediaWiki/query-tests

Add AdvancedQueryForResultLookupDBIntegrationTest
SPARQLStore / QE / Split conditions, add SparqlConditionBuilder

- Individual condition are moved from SMWSparqlStoreQueryEngine
- Condition buidling has been moved into its own component to aid SRP
- SparqlConditionBuilder now takes in a Description and outputs a
sparql where condition
Merge pull request #383 from SemanticMediaWiki/sparql-qe-condition

SPARQLStore / QE / Split conditions, add SparqlConditionBuilder
SPARQLStore / QE / Count query results

Count query results are returned as an integer which makes it impossible to
return a proper object or for that matter possible errors

- Add `SMWQueryResult::setCountValue`, `SMWQueryResult::getCountValue`
- `SMWQueryProcessor` is modified in away that it detects an integer or object
and acts accordingly
SPARQLStore / QE integration

- QueryEngine to composition and better aid SRP

```
$queryEngine = new QueryEngine( SparqlDatabase(), new SparqlConditionBuilder(), new SparqlResultConverter( ... ) );
```