Implement some logic in abstract methods

Since there're some checks that will be common between implementations
(MIN_TTL <= TTL <= MAX_TTL, for example), this patch adds a first set of
logic and tests fro *Base classes

Implements blueprint storage-base

Change-Id: I9e543ef2e2624bd5483e6d2392d0a9aeff5b0416
Added tenant to the *ControllerBaseTest

Tenant was missing in base tests. This patch adds it to every test.

Implements blueprint storage-base

Change-Id: I71e677dc062f5798e75aaf19778956df6b0a89e0
Merge "Implement some logic in abstract methods"
Merge "Added tenant to the *ControllerBaseTest"