Integrating residential-level photovoltaic (PV) power generation and energy storage systems into the smart grid will provide a better way of utilizing renewable power. This has become a particularly interesting problem with the availability of dynamic energy pricing models in which electricity consumers can use their PV-based generation and controllable storage devices for peak shaving on their power demand profile from the grid, and thereby, minimize their electric bill cost. The residential-level storage controller should possess the ability of forecasting future PV-based power generation and load power consumption profiles for better performance. In this paper we present novel PV power generation and load power consumption prediction algorithms, which are specifically designed for a residential storage controller. Furthermore, to perform effective storage control based on these predictions, we separate the proposed storage control algorithm into two tiers, one which is performed at decision epochs of a billing period (e.g., a month) to globally "plan" the future discharging/charging schemes of the storage system, and another one performed locally and more frequently as system operates to compensate prediction errors. The first tier of algorithm is formulated and solved as a convex optimization problem at each decision epoch of the billing period, while the second tier has O(1) complexity.