base: File API

Closes #1546
Signed-off-by: Stef Walter <stefw@redhat.com>
 * Fixed indentation
 * Fixed use of constructor without new