Refactor file structure

Separate header and implementation
Add PVEntity for defult return holder.
Implement basic group

Applied ```_PV``` prefix
Removed PVEntity
Fix spec.